设计模式
文章平均质量分 81
abing37
这个作者很懒,什么都没留下…
展开
-
Java反射之JDK动态代理实现简单AOP
JDK动态代理实现简单AOP JDK动态代理是java反射的一个重要特性。它在某种方面为java提供了动态性的特性,给应用带来了无限的空间。大名鼎鼎的Hessian、Spring AOP基于动态代理实现。本文将简单的介绍JDK动态代理使用。 关于代理模式 代理原创 2010-04-04 13:52:00 · 6440 阅读 · 0 评论 -
【设计】一个有意思的服务方法入参设计
今天晚上和项目组的几个同学讨论一个服务方法的入参设计,觉得挺有意思的,在此记录一下! 背景我们的场景需要对外暴露一个远程服务写入接口,用于给几个外部同步数据的场景。由于历史的原因,需要被写入的这个业务对象很大,字段很多(100多个字段,也会涉及多个表)。以下是场景提取出来的一些要求:1.这个场景只需要同步更新几个字段到该主表里。为了数据安全和方便理解,不希望把整个业务...2011-09-01 22:40:11 · 213 阅读 · 0 评论 -
【Spring】IOC核心源码学习(二):容器初始化过程
接上文 啃啃老菜: Spring IOC核心源码学习(一) ,本文将以ClassPathXmlApplicationContext这个容器的实现作为基础,学习容器的初始化过程。ClassPathXmlApplicationContext类体系结构以下是ClassPathXmlApplicationContext的类继承体系结构,理解这个结构有助于后...2011-09-21 21:03:18 · 335 阅读 · 0 评论 -
【Spring】IOC核心源码学习(三):bean标签和自定义标签实现原理
接上文:【Spring】IOC核心源码学习(二):容器初始化过程 本文将解析spring bean定义标签和自定义标签的解析实现原理。这里说的标签仅限于以xml作为bean定义描述符的spring容器,继承AbstractXmlApplicationContext的一些子容器,如XmlApplicationContext、ClassPathXmlApplicationCo...2011-09-25 11:13:30 · 157 阅读 · 0 评论 -
啃啃老菜:Spring IOC核心源码学习(一)
啃啃老菜:Spring IOC核心源码学习(一) 本文主要以spring ioc容器基本代码骨架为切入点,理解ioc容器的基本代码组件结构,各代码组件细节剖析将放在后面的学习文章里。关于IOC容器 IoC容器:最主要是完成了完成对象的创建和依赖的管理注入等等。先从我们自己设计这样一个视角来考虑:...2011-08-14 13:57:28 · 253 阅读 · 0 评论 -
【java规范】Java spi机制浅谈
最近看到公司的一些框架和之前看到的开源的一些框架的一些服务发现和接入都采用了java的spi机制。所以简单的总结下java spi机制的思想。 我们系统里抽象的各个模块,往往有很多不同的实现方案,比如日志模块的方案,xml解析模块、jdbc模块的方案等。面向的对象的设计里,我们一般推荐模块之间基于接口编程,模块之间不对实现类进行硬编码。一旦代码里涉及具体的实现类,就违反了可拔插的原则,...2012-04-24 23:04:35 · 442 阅读 · 0 评论 -
Xml ResourceBundle简单实现
ResourceBundle主要是用于和本地语言环境相关的一些资源绑定。特别是String资源。从国际化的设计角度看,一般在代码里不编写和语言环境相关的东西。比如在代码里编写和语言环境相关的错误提示或信息。以下面枚举为例:public enum WeekdayEnum { Monday, Tuesday, Wednesday, Thursday, Friday, Saturd...原创 2012-04-17 21:45:04 · 235 阅读 · 0 评论 -
【总结】近期的几点技术心得总结
近期做了好长时间的项目,很久没写文档了,这次的项目很难得的自己做了很多的技术方案,且以前有些不一样,现成直接可用方案并没有。 今天闲来总结几点: 1.技术方案大部分从应用场景出来的技术方案是为了解决一个现成的问题。一个现成的很好的方案,可能在实施成本、冲突方面和项目不符。针对当前的场景也许一个现成的方案可行,但并不一定是最合适的。 2.新的技术方案往往面临需要不断修正...2012-09-09 09:29:15 · 132 阅读 · 0 评论