1 简单工厂模式
用途 BeanFactory
简单来说就是让工厂给我生产一个类,具体生产的是哪个子类实例,我并不不关心
User user = (User) beanFactory.getBean("user");
2 工厂方法模式
用途 FactoryBean
简单工厂模式是让工厂生产一个类,而工厂方法模式需要先建造一个工厂,然后用它来生产自己需要的类。
class UserFactoryBean implements FactoryBean<User> {
public User getObject() { ... }
}
3 单例模式
Spring管理的Bean默认是单实例的
4 适配器模式
用途 HandlerAdapter
5 装饰器模式
用途 名称中包含Wrapper或Decorator的类
装饰模式动态的给一个对象添加额外的功能,相比创建新的子类更为灵活
6 代理模式
用途 AOP
7 观察者模式
用途 事件驱动模型
在Spring中编写一个类实现ApplicationListener接口即可监听关注的事件
8 策略模式
用途 初始化Bean策略
9 模板方法模式
用途 Template类如JdbcTemplate