设计模式应用
- 单例模式
RunTime类是单例模式的体现,getRunTime()方法会返回一个唯一的实例。确保程序中只有一个唯一的RunTime类对象 - 建造者模式
StringBuilder和StringBuffer是建造者模式的体现 - 工厂模式
Calender类中Calender.getInstance()方法
DriverManager.getConnection()方法 - 代理模式
Proxy类是代理模式的体现 - 装饰者模式
BufferedInputStream
单例模式:
Spring中的Bean默认是单例的,方便不同组件共享一个对象
工厂模式:
BeanFactory、ApplicationContext
代理模式:
SpringAOP 日志、事务、监控
JDK Proxy、CGLIB 动态代理。JDK 动态代理基于接口实现,CGLIB代理通过继承目标类来实现
模板模式:
JdbcTemplate
redisTemplate
约定了模板,用户通过实现接口来制定具体的功能
依赖注入模式:
依赖注入DI