- 博客(12)
- 收藏
- 关注
原创 elasticsearch集群部署(一) 快速部署
1. 牢骚 差不多去年这个时候,因为其他项目组需要,把我拉去充壮丁部署了下elasticsearch集群,并简单封装了下客户端工具包。 心想着新掌握一门手艺也不是坏事,就深入学习了一段时间。 然后。。。。。。。。。。。然后在项目结束后,就忘了 %>_<% 这会儿新项目组又拉着我去传授elasticse...
2015-06-06 21:14:30 132
spring validation的灵活使用
首先看下这位网友的文章。 http://haohaoxuexi.iteye.com/blog/1812584 如上所述,spring支持的校验框架,一种是自己实现org.springframework.validation.Validator接口,一种是JSR303标准并采用hibernate的实现。相比之下,前者需要为每个被校验对象进行实现,而后者基于注解,虽然学习曲线稍...
2014-12-21 20:08:00 251
原创 阻塞与非阻塞设计方式的对比。
一、标准socket 对socket编程毫无经验的新手(比如我),一开始便看NIO,虽然API是看懂了,却始终无法明白体会和标准socket编程在设计方式上的本质区别。 可以先看下如下这篇文章,把传统socket编程的服务端基础讲得比较清楚。 http://blog.csdn.net/lin49940/article/details/4398364 ...
2014-12-20 22:17:29 440
原创 JAVA Type体系与泛型的获取
本文主要部分为转载,但修正了部分文字错误,并删除了一些自己认为不太恰当的结论。 一、概述 java.lang.reflect.Type:java语言中所有类型的公共父接口 1. Type直接子接口 ParameterizedType,GenericArrayType,TypeVariable和WildcardType四种类型的接口Param...
2014-12-20 12:57:52 348
原创 关于mybatis与spring事务管理的摘要
众所周知,mybatis中的SqlSession并非线程安全,官方建议作用于和方法相同。 而在使用spring进行事务管理时,若需要将事务托管于spring,则必须使用spring封装的utils类获取数据库连接,此数据连接与当前线程绑定,保证了线程安全的同时,也让spring基于声明的事务管理成为了可能--------AOP完成隐式的事务控制、而数据连接对象则由AOP从当前线程...
2014-12-02 16:14:17 100
原创 【转】WebApplicationContext初始化简述
首先,对于一个web应用,其部署在web容器中,web容器提供其一个全局的上下文环境,这个上下文就是ServletContext,其为后面的spring IoC容器提供宿主环境;其次,在web.xml中会提供有contextLoaderListener。在web容器启动时,会触发容器初始化事件,此时contextLoaderListener会监听到这个事件,其context...
2014-11-20 11:45:05 230
原创 关于泛型擦除的一些文章整理
之前看到泛型的类型擦除时,非常疑惑。明明JDK1.5之后,在Class字节码中已经加入了signature属性来存储泛型信息,又为何说在编译后被擦除呢。知道找到了下面这篇。。 http://www.iteye.com/topic/585900#1357097 “Java泛型有这么一种规律: 位于声明一侧的,源码里写了什么到运行时就能看到什么; 位于使用一侧的,源码...
2014-10-22 17:51:39 82
原创 Java线程协作与消费者生产者模式
notify()与wait() 先来说一下notify()、notifyAll()与wait()方法. 可能会令初学者可能比较困惑的是,作为线程通讯的方式,notify()、notifyAll()与wait()却被定义在Object类上。其实很好理解,wait()的本质是释放已获取的锁对象并阻塞等待被唤醒,而notify()则是释放已获取的锁对象并唤醒...
2014-10-19 14:31:37 95
原创 从volatile关键字谈下并发问题的个人理解
先来看一篇详细分析volatile语义的文章。 http://www.infoq.com/cn/articles/java-memory-model-4 若问及volatile关键字的含义,一般都会得到如下答案。 (1)对volatile修饰的变量,各线程间的写操作将立即对其他线程可见。 (2)volatile修饰的变量的操作是原子性...
2014-10-18 17:15:39 426
原创 java线程池中的线程超时控制
先MARK下一篇将JDK自带线程池的工具文,讲得挺清楚。 http://www.oschina.net/question/565065_86540 一些系统中的外部IO调用,比如调用第三方系统的WEBSERVICE等,尽管可以设定超时时间,但若每次调用都接近超时的上限的话,在并发较大的情况下很容易会造成系统不堪重负。此时若此调用无需实时获得调用结果,则可采用newFixed...
2014-10-17 15:00:48 3910
原创 CGLIB相关学习资料整理
http://shensy.iteye.com/blog/1867588 几篇入门的文章,有几个常用使用方式的介绍,但不全。 http://www.iteye.com/topic/799827 从源码结构来看CGLIB,可以对CGLIB的结构有一个更深的理解。 待补充。。。...
2014-10-15 20:41:25 146
原创 粗看JDK动态代理与CGLIB的设计方式
去年这个时候,因为项目需要,编写了一些Annotation。每一个使用这些注解的类,都是通过CGLIB动态生成增强类(或者说是代理类),而注解的处理逻辑,则是在增强类的回调函数处实现的。 另一方面,JDK从1.5开始也提供了动态代理功能。 翻阅网上对此2者的比较,看到最多的是以下这个结论: JDK动态代理只支持拥有接口的类。而CGLIB功能更强大,可代...
2014-10-15 20:14:50 88
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人