首页  

Spring中的设计模式     所属分类 DP 浏览量 600
简单工厂 静态工厂方法(StaticFactory Method)模式
BeanFactory
Object getBean(String name) throws BeansException;

工厂方法(Factory Method)
FactoryBean 
T getObject() throws Exception;

单例(Singleton)

原型模式

模板 Template 
定义一个操作中的算法的骨架,而将一些步骤延迟到子类中
使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤
JdbcTemplate


策略(Strategy)
Resource接口
UrlResource  访问网络资源
ClassPathResource  访问类加载路径里资源
FileSystemResource 访问文件系统里资源
ServletContextResource  访问相对于ServletContext路径里的资源
InputStreamResource 
ByteArrayResource 


代理(Proxy)
aop 动态代理
JdkDynamicAopProxy  Cglib2AopProxy



观察者(Observer)
定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新
ApplicationListener
 spring容器事件机制 


包装器(Decorator)
动态地给一个对象添加一些额外的职责 比生成子类更为灵活
类名中 包含 Wrapper 或 Decorator
BeanWrapper

适配器(Adapter)
SpringMVC中的适配器
org.springframework.web.servlet.HandlerAdapter

DispatcherServlet根据HandlerMapping返回的handler,向HandlerAdatper发起请求,处理Handler
HandlerAdapter根据规则找到对应的Handler并让其执行,执行完毕后Handler会向HandlerAdapter返回一个ModelAndView,最后由HandlerAdapter向DispatchServelet返回一个ModelAndView。
Spring定义了一个适配接口,使得每一种Controller有一种对应的适配器实现类,让适配器代替controller执行相应的方法
这样在扩展Controller时,只需要增加一个适配器类就完成了SpringMVC的扩展



设计模式小结

上一篇     下一篇
tdengine 在时序场景下 一些设计要点

吃在杭州

知识点汇总

设计模式之Facade

Java Files 常用方法

hibernate Session get()和load()方法区别