策略模式
策略模式用于封装系列的算法,这些算法通常被封装在一个被称为 Context 类中,客户端程序可以自由选择其中一种算法,或让 Context 为客户端选择一个最佳的算法——使用策略模式的优势是为了支持算法的自由切换

- Context:使用不同策略的环境,它可以根据自身的条件选择不同的策略实现类来完成所要的操作;它持有一个策略实例的引用;创建具体策略对象的方法也可以由它完成;
- Strategy:抽象策略,定义每个策略都要实现的策略方法;
- ConcreteStrategy:具体策略实现类,实现在抽象策略中定义的策略方法;
Spring中策略模式的运用
- Spring AOP动态代理的策略
- Resource资源访问策略