spring用到的设计模式

spring源码也读了两遍了,但对于里面描述的关系还是不太清楚,以后再多读几遍吧,但总还有些收获的,下面就说说spring用到的设计模式主要有哪些:

1.工厂模式,这个很明显,在各种BeanFactory以及ApplicationContext创建中都用到了;

2.模版模式,这个也很明显,在各种BeanFactory以及ApplicationContext实现中也都用到了;

3.代理模式,在Aop实现中用到了JDK的动态代理;

4.策略模式,第一个地方,加载资源文件的方式,使用了不同的方法,比如:ClassPathResourece,FileSystemResource,ServletContextResource,UrlResource但他们都有共同的借口Resource;第二个地方就是在Aop的实现中,采用了两种不同的方式,JDK动态代理和CGLIB代理;

5.单例模式,这个比如在创建bean的时候。

就说以上这些,说的也不是很清楚,如果想搞明白,还是多看几遍代码吧,当然还用到了其他的设计模式,就不多说了。

http://www.ibm.com/developerworks/cn/java/j-lo-spring-principle/

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Spring 使用了多种设计模式,常见的设计模式包括: 1. 单例模式(Singleton Pattern):Spring 的核心容器 ApplicationContext 都是单例对象,保证了容器中的 Bean 对象也是单例的。 2. 工厂模式(Factory Pattern):Spring 使用工厂模式创建和管理 Bean 对象,通过配置文件或注解来实现对 Bean 的创建和配置。 3. 代理模式(Proxy Pattern):Spring AOP(面向切面编程)使用了代理模式来实现横切关注点的功能,如事务管理、日志记录等。 4. 观察者模式(Observer Pattern):Spring 的事件驱动机制基于观察者模式,通过监听器(Listener)来处理事件。 5. 模板模式(Template Pattern):Spring 的 JdbcTemplate 使用了模板模式,将数据库操作的公共部分封装在模板中,减少了重复代码的编写。 6. 建造者模式(Builder Pattern):Spring 的构建者模式用于配置复杂的对象,如 BeanDefinitionBuilder 用于构建 BeanDefinition 对象。 7. 适配器模式(Adapter Pattern):Spring 的适配器模式用于将不同的接口适配到统一的接口,如 HandlerAdapter 用于处理不同类型的请求处理器。 8. 装饰器模式(Decorator Pattern):Spring 的装饰器模式用于增强现有对象的功能,如 AOP 中的切面(Aspect)就是通过装饰器模式实现的。 以上只是一些常见的设计模式Spring 中的应用,实际上 Spring 还使用了其他设计模式来提供更强大的功能和灵活性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值