上下文对象
来源:http://corej2eepatterns.com/C...
问题需求
您希望避免在相关上下文之外使用特定协议的系统信息
- 您想访问系统信息中的组件和服务
- 您想通过系统信息的特定协议解耦应用中的组件和服务
- 您只想暴露上下文中关联的APIs
解决方案
您可以使用上下文对象来封装状态,并以独立协议的方式在整个应用中共享
策略
-
请求上下文策略
- 请求上下文Map策略
- 请求上下文POJO策略
- 请求上下文Validation策略
-
配置上下文策略
- JSTL配置策略
- Security上下文策略
-
一般上下文对象策略
- 上下文对象Facrory策略
- 上下文Auto-Population策略
结论
- 提升可复用性和可维护性
- 提升可测性
- 降低接口演变的约束
- 性能降低
相关模式
- 拦截过滤器模式
拦截过滤器可以在web请求的处理过程中使用ContextFactory创建一个上下文对象 - 前端控制器模式
前端控制器可以使用contextFactory在web请求处理的过程中创建一个上下文对象 - 应用控制器模式
应用控制器可以使用contextFactory在web请求处理的过程中创建一个上下文对象 - 传输对象
传输对象是专门用于跨远程层的传输状态,用来减少网络通信,而上下文对象是用来隐藏实现细节,提高可复用性和可维护性
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。