
JAVA
文章平均质量分 63
bd329916948
这个作者很懒,什么都没留下…
展开
-
Spring IOC注入源码分析
@Autowired、@Resource、xml配置 在创建类的实例对象后调用AbstractAutowireCapableBeanFactory的populateBean()方法进行属性注入byName或者byType中需要注意的是:spring的代码实现都是根据实例对象的Introspector内省beaninfo来获取注入属性的(即自动装配的属性必须有set方法),否则获取不到...原创 2016-07-28 09:44:06 · 198 阅读 · 0 评论 -
Spring Bean初始化源码解析
populateBean()方法进行属性注入完成后进行类实例对象的初始化 invokeAwareMethods(beanName, bean);调用实现了*Aware接口的set方法进行对应的赋值(如果没有实现Aware接口则不会进行set赋值) 第二步是调用beanpostProcessor初始化before,内部实现是获取所有的beanPostP...原创 2016-07-28 09:46:24 · 185 阅读 · 0 评论 -
Spring4 Junit异常浅析
Spring4.3.1版本集成Junit测试需要至少Junit4.12或更高版本,否则@RunWith(SpringRunner.class)注解会一直报错,导致如下异常:java.lang.Exception: No tests found matching [{ExactMatcher:fDisplayName=addTest], {ExactMatcher:fDisplayName=...原创 2016-07-28 09:49:42 · 147 阅读 · 0 评论 -
Spring mapping浅析
写道当没有显示配置mapping <bean>和<mvc:annotation-driver>时,DispatchServlet会在初始化的时候自动加载默认映射器DefaultAnnotationHandlerMapping和BeanNameUrlHandlerMappingØ BeanNameUrlHandlerMapping加载mapping:根据beanName...原创 2016-07-28 10:03:51 · 1404 阅读 · 0 评论 -
ConcurrentHashMap的使用
缓存的使用高性能本地缓存:对系统中常用到的业务数据放到缓存中以提高系统性能,限制是单服务器模式分布式缓存:常用分布式缓存技术memcached、redis等ConcurrentHashMap就是常用的高并发下的缓存对象。关于ConcurrentHashMap的原理和一些与HashTable等的对比可以参照:http://ifeve.com/concurrenthashmap...原创 2016-08-04 12:31:01 · 290 阅读 · 0 评论 -
Guava Cache的使用
Guava Cache与ConcurrentHashMap很相似,区别在于Guava Cache能设置回收,解决了大数据缓存导致的内存溢出问题Guava Cache的回收方式有三种:基于容量回收、定时回收和基于引用回收具体介绍参照:http://ifeve.com/google-guava-cachesexplained/上测试代码:public class CacheTest...原创 2016-08-04 14:28:04 · 152 阅读 · 0 评论