![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java
文章平均质量分 86
xsh5324
这个作者很懒,什么都没留下…
展开
-
Spring Aop核心源码分析
提示:这里只对核心代码做讲解,如果你想彻底了解请打开你的编辑器定位到对应的源码上,一步一步跟着看相信你会有所收获的。 明词解释 链接点:在SpringAop中指的是方法. 目标对象:代理对象内部代理的那个对象, 目标方法:当前在目标对象上要执行的方法 通知:在链接点执行前、后、异常情况下要执行的代码,SpringAop中有前置通知、后置通知、异常通知、环...2013-04-13 17:34:43 · 127 阅读 · 0 评论 -
Java基本数据类型(short,int,long,char)与bytes之间互转
在编写网络通信的时候通常会指定一个报头来说明C/S端数据的协议和内容体的长度,内容长度在java代码里面通常表现为一个int类型或是long类型,但是在将int或long弄写到通信管道的却需要将其转成字节数组。公司有人这样写: String length = String.valueOf(request.getData().length); while (length.length() &...2013-07-03 18:32:43 · 308 阅读 · 0 评论 -
Netty源码分析 之 实现原理
开门见山,在此我就不介绍Netty,关于Neety的介绍、用法我在此推荐一篇文章http://www.kafka0102.com/2010/06/167.html,关于Java NIO网络编程的知识请Google。 Netty版本:3.6.6 个人觉得Netty之所以高性能主要是因为它的多路I/O复用模型和零拷贝的Buffer。 Netty中有两大核心组件ChannelFac...原创 2013-07-26 17:00:49 · 209 阅读 · 0 评论 -
并发框架Disruptor几个Demo
经过2个月的疯狂加班后终于迎来了五一节前的几天清闲日子,在这闲得蛋疼的日子里,本屌丝无意中从ifeve上看到“Disruptor”并发框架,它号称"能够在一个线程里每秒处理6百万订单" 当时就被它吸引住了,不管是不是在吹流逼吧,先研究研究在说.... 扫盲: 要想了解Disruptor框架必需多花点时间研究下它的工作原理,不然代码是没法撸的!!! 关于Disrupt...原创 2014-04-30 17:27:34 · 865 阅读 · 0 评论 -
Netty源码分析 之 NioServerSocketChannelFactory
NioServerSocketChannelFactory 是ChannelFactory的实现接口之一,负责创建并管理服务端Channel。 先来看下它的周边类图是怎样 下面针对核心的类做下讲解,然后就开始跟踪源码一步一步分析 NioServerSocketPipelineSink 接受和处理终端的下游ChannelEvent事件. AbstractNi...原创 2013-07-31 11:08:32 · 262 阅读 · 0 评论 -
谨用java.ext.dirs系统属性!
众所周知,java中系统属性java.ext.dirs指定的目录由ExtClassLoader加载器加载,如果您的程序没有指定该系统属性(-Djava.ext.dirs=sss/lib)那么该加载器默认加载$JAVA_HOME/lib/ext目录下的所有jar文件。但如果你手动指定系统属性且忘了把$JAVA_HOME/lib/ext路径给加上,那么ExtClassLoader不会去加载$JAVA...2014-08-05 14:25:30 · 360 阅读 · 0 评论 -
Hibernate 一级缓存的陷阱
最近公司的应用经常报OOM,一开始我以为是公司业务数据太多,导致内存不够,所以只是简单的把容器的内存加大。撑了几天后这个错仍然被报出来。后来我仔细分析过项目代码后,没有发现有任何引起内存泄漏的地方。百思不得其解,于是我决定在OOM异常发生的那刻将JVM内存堆导出来仔细分析,我在生产环境的某一台机器上加上了JVM启动参数:“-XX:+HeapDumpOnOutOfMemoryError ...2013-10-17 18:26:59 · 176 阅读 · 0 评论