自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

ZERO

  写程序归根到底就是做两件事---算法实现和错误处理

  • 博客(14)
  • 收藏
  • 关注

原创 Preparedstatement和Statement的区别

PreparedStatement是预编译的, Preparedstatement支持批处理,对于批量处理可以大大提高效率。       Statement每次执行sql语句,相关数据库都要执行sql语句的编译。对于只执行一次的SQL语句选择Statement是最好的。因为PreparedStatement对象的开销比Statement大,对于一次性操作并不会带来额外的好处。相反,如果SQL语

2015-11-28 18:33:41 4779

原创 Java8の字符串操作

String str = "hi";str.chars().mapToObj(ch -> Character.valueOf((char) ch)).forEach(System.out::println);之前使用for循环来连接一个集合中的所有元素:StringBuilder stringBuilder = new StringBuilder();for (String str

2015-11-28 11:08:16 1957

原创 Stream性能比较测试

测试环境:jdk1.8.0_60, guava-18.0.jartoMap public static void demo1() { int size = 50000; List list = new ArrayList<>(size); for (int i = 0; i < size; i++) {

2015-11-21 15:22:33 4917 1

转载 Java8のStream学习

 转载自:http://www.ibm.com/developerworks/cn/java/j-lo-java8streamapi/       JDK中已经增加了一个新包java.util.stream,能够使用Java8集合类库执行类似filter/map/reduce的操作。这个流式API使我们能在数据流之上编写串行或者并行的操作。       Stream操作分为中间操作或者最终...

2015-11-21 15:11:33 614

转载 Java8のLambda学习

转载自:http://www.jb51.net/article/48304.htm             http://www.oschina.net/translate/everything-about-java-8Lambda表达式       使用Java8之前的语法,如何实现比较器:List list = Arrays.asList(7, 4, 1, 2);Co

2015-11-21 15:01:15 631

转载 ListenableFuture

转载自:http://www.cnblogs.com/hupengcool/p/3991310.htmlListenableFuture的说明        Guava定义了ListenableFuture接口并继承了JDK concurrent包下的Future接口,ListenableFuture允许注册回调方法(callbacks),在运算(多线程执行)完成的时候进行调用,或

2015-11-17 17:04:03 1508

转载 Spring RMI注意问题

转载自: http://yangwencan2002.iteye.com/blog/284249RMI问题1:用 ./shutdown.sh 关闭 rmi 服务器的 tomcat ,然后 ./startup.sh 启动,客户端连接总是会导致如下错误:org.springframework.remoting.RemoteLookupFailureException: Lookup o

2015-11-17 15:29:05 4085

原创 ConcurrentHashMap使用示例

ConcurrentHashMap是并发效率更高的Map,用来替换其他线程安全的Map容器,比如Hashtable和Collections.synchronizedMap。实际上,并发执行时,线程安全的容器只能保证自身的数据不被破坏,但无法保证业务的行为是否正确。错误的理解这里的线程安全,不恰当的使用ConcurrentHashMap,往往会导致出现问题。举个例子: public st

2015-11-14 10:01:25 24211 2

原创 Log4j2简单使用

Log4j 2 包含了基于LMAX 分离库的下一代的异步日志系统,在多线程环境下,异步日志系统比 Log4j 1.x 和Logback 提高了10倍性能提升(吞吐量和延迟率 )。日志的级别 log4j规定了默认的几个级别:trace < debug < info < warn < error < fatal。这里要说明一下:...

2015-11-10 09:47:04 1150

原创 Jackson2笔记

官方WIKI:https://github.com/FasterXML/jackson-databind/wikijackson 1.x和2.x版本的注解是放置在不同的包下的      1.x是在jackson core jar包org.codehaus.jackson.annotate下      2.x是在jackson-databind包com.fasterxml.jacks

2015-11-07 21:44:51 2478

原创 简单使用Disruptor

1.定义事件与事件工厂       事件(Event)就是通过 Disruptor 进行交换的数据类型。       事件工厂(Event Factory)定义了如何实例化事件(Event),需要实现接口 com.lmax.disruptor.EventFactory。Disruptor 通过EventFactory在 RingBuffer 中预创建 Event 的实例。一个 Event

2015-11-06 16:21:32 3040 1

转载 Disruptor介绍(二)

转载自:http://www.cnblogs.com/haiq/p/4112689.html             http://www.zijinxing.com/201501/130218.html             http://www.th7.cn/Program/java/201410/289634.shtml五、Disruptor其它性能提高点     

2015-11-06 16:07:29 905

转载 Disruptor介绍(一)

转载自:http://www.cnblogs.com/haiq/p/4112689.html             http://developer.51cto.com/art/201306/399370.htm             http://www.th7.cn/Program/java/201410/289634.shtml一、什么是 Disruptor   

2015-11-06 16:02:55 1071

原创 Java代码性能优化

1、尽可能使用局部变量       调用方法时传递的参数以及在调用中创建的临时变量都保存在栈中速度较快,其他变量,如静态变量、实例变量等,都在堆中创建,速度较慢。另外,栈中创建的变量,随着方法的运行结束,这些内容就没了,不需要额外的垃圾回收。2、尽量减少对变量的重复计算       明确一个概念,对方法的调用,即使方法中只有一句语句,也是有消耗的,包括创建栈帧、调用方法时保护现场、

2015-11-03 15:27:48 622

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除