
java
文章平均质量分 76
java_4_ever
这个作者很懒,什么都没留下…
展开
-
升级JDK8的坑----base64
概述Base64是一种字符串编码格式,采用了A-Z,a-z,0-9,“+”和“/”这64个字符来编码原始字符(还有垫字符“=”)。一个字符本身是一个字节,也就是8位,而base64编码后的一个字符只能表示6位的信息。也就是原始字符串中的3字节的信息编码会变成4字节的信息。Base64的主要作用是满足MIME的传输需求。 在Java8中Base64编码已经成为Java类库的标准,且内置了Bas...原创 2018-07-09 21:55:55 · 19678 阅读 · 10 评论 -
Apache HttpClient4.3.x忽略证书验证
今天需要忽略证书验证的时候,找了一圈没见靠谱的代码,无奈只能去官网看文档了,结果记录一下。官方文档看这里//此处跳过证书验证的方式适用于apache httpclient 4.3.x版本,并不一定适用于其他httpclient版本,请注意。 SSLContext sslContext = SSLContexts.custom().useTLS().loadTrustMaterial(原创 2015-08-20 14:45:36 · 2742 阅读 · 2 评论 -
ThreadPoolExecutor运转机制详解
转载自走向架构师之路最近发现几起对ThreadPoolExecutor的误用,其中包括自己,发现都是因为没有仔细看注释和内部运转机制,想当然的揣测参数导致,先看一下新建一个ThreadPoolExecutor的构建参数:[java] view plaincopypublic ThreadPoolExecutor(int c转载 2015-01-08 11:48:45 · 585 阅读 · 0 评论 -
Lock-free VS wait-free
转载自并发编程网有两种非阻塞线程同步算法,即无锁和无等待,这两种算法经常会产生混淆。在无锁系统中,当任何特定的运算被阻塞的时候,所有CPU可以继续处理其他的运算。换种方式说,在无锁系统中,当给定线程被其他线程阻塞的时候,所有CPU可以不停的继续处理其他工作。无锁算法大大增加系统整体的吞吐量,因为它只偶尔会增加一定的交易延迟。大部分高端数据库系统是基于无锁算法而构造的,以满足不同转载 2015-01-07 11:21:52 · 3350 阅读 · 0 评论 -
Java 8:HashMap的性能提升
HashMap是一个高效通用的数据结构,它在每一个Java程序中都随处可见。先来介绍些基础知识。你可能也知道,HashMap使用key的hashCode()和equals()方法来将值划分到不同的桶里。桶的数量通常要比map中的记录的数量要稍大,这样每个桶包括的值会比较少(最好是一个)。当通过key进行查找时,我们可以在常数时间内迅速定位到某个桶(使用hashCode()对桶的数量进行取模)以及要转载 2015-01-06 09:32:55 · 660 阅读 · 0 评论 -
JDK源码解读之RegularEnumSet
主要内容转载自usafchn's Notes,然后在此基础上做了一些补充。缘由今天做项目的时候偶然用到EnumSet,EnumSet平时不太常用,比较陌生,于是点进去看了下源码,发现这个类还是比较有意思的,首先EnumSet是个抽象类,当我们调用EnumSet提供的静态函数创建对象的时候,实际创建的是RegularEnumSet或者JumboEnumSet,前者对应原创 2014-12-30 11:15:13 · 1087 阅读 · 0 评论 -
Java NIO系列教程
并发编程网出品,必属精品。本来还想copy过来,后来想想意义不大。点击这里查看系列文章。这一系列是翻译过来的,每篇都比较短(这就是我想把它们弄到一块的原因),原文写的也很通俗易懂,有兴趣的可直接看原文。转载 2014-12-25 11:22:23 · 436 阅读 · 0 评论 -
Singleton 单例模式
转载自http://wuchong.me/blog/2014/08/28/how-to-correctly-write-singleton-pattern/单例模式算是设计模式中最容易理解,也是最容易手写代码的模式了吧。但是其中的坑却不少,所以也常作为面试题来考。本文主要对几种单例写法的整理,并分析其优缺点。很多都是一些老生常谈的问题,但如果你不知道如何创建一个线程安全的单例,不知转载 2014-12-24 10:24:12 · 510 阅读 · 0 评论 -
Lock wait timeout
昨天开发过程中,调试一段代码的时候程序抛出了Lock wait timeout excaption。Caused by: java.sql.SQLException: Lock wait timeout exceeded; try restarting transaction at com.mysql.jdbc.SQLError.createSQLException(SQLErro原创 2014-11-14 13:54:40 · 1948 阅读 · 0 评论 -
双重检查锁定与延迟初始化
本来是看到多线程中关于安全发布的问题,然后想起来之前看过文章说双重检查锁定也不能解决安全发布的问题,但是不记得为什么了。于是,就去搜了一下,这篇转载的文章写的挺清楚的(本来还打算自己写)。本文转自双重检查锁定与延迟初始化ifeve.com 主要是介绍并发相关内容的网站,有自己原创内容,也有翻译外文,很给力。双重检查锁定的由来在java程序中,有时候可能需要推迟一转载 2014-11-14 13:49:39 · 1574 阅读 · 1 评论 -
Spring3.0 RESTful
Spring3.0已经能很好的支持RESTful风格的API了,开发过程也很简单,支持RESTful风格API的实现也并不强制使用SpringMVC,非常灵活。前几篇文章中提到的XFire什么的,开发起来太麻烦,需要注意的事情比较多,希望各位对webService有兴趣的,也去了解一下Spring3.0对RESTful的支持。至于具体的程序列子,在这里也懒得重写了,手头没有现成的,原创 2012-09-20 20:49:46 · 977 阅读 · 0 评论 -
Spring MVC入门
这篇文章将教你快速地上手使用 Spring 框架. 如果你手上有一本《Spring in Action》, 那么你最好从第三部分"Spring 在 Web 层的应用--建立 Web 层"开始看, 否则那将是一场恶梦!首先, 我需要在你心里建立起 Spring MVC 的基本概转载 2011-10-09 11:38:12 · 550 阅读 · 0 评论 -
java读写文件大全
非原创 转自http://blog.csdn.net/smartcat86/article/details/4085739使用Java操作文本文件的方法详解 摘要: 最初java是不支持对文本文件的处理的,为了弥补这个缺憾而引入了Reader和Writer两个转载 2011-10-09 10:44:20 · 605 阅读 · 0 评论