Tomcat设计模式-门面模式(facade)
来源:互联网 发布:淘宝客服投诉电话400 编辑:程序博客网 时间:2024/05/18 00:46
门面模式有如下作用:
- 为一个复杂子系统提供一个简单接口
- 提高子系统的独立性
- 在层次化结构中,可以使用Facade模式定义系统中每一层的入口。
Tomcat的request使用了面门模式。利用门面模式把request的接口进行进一步封装。在servlet中使用的request实际上是requestFacade。
org.apache.catalina.connector.Request 和org.apache.catalina.connector.RequestFacade都继承了javax.servlet.http.HttpServletRequest。实际上在servlet中也是用父类HttpServletRequest作为方法的参数,只能使用javax.servlet.http.HttpServletRequest提供的方法。
Request类通过方法getRequest() 返回门面RequestFacade,在RequestFacade中把Request的接口进一步封装。
public HttpServletRequest getRequest() { if (facade == null) { facade = new RequestFacade(this); } return facade; }
在http消息的传递过程中,在传递到servlet之前在org.apache.catalina.core.StandardWrapperValve.invoke()中,调用filterChain.doFilter(request.getRequest(),response.getResponse());
把传递的对象从Request转换成RequestFacade。此后Request变得不可见,用户操作对象只能是RequestFacade。这样通过门面实现了系统内部和外部操作对象的分离。
- Tomcat设计模式-门面模式(facade)
- 设计模式--Facade(门面模式)
- 设计模式-门面模式(Facade)
- Java设计模式(四) Facade(门面)模式及Tomcat引申
- 门面设计模式(Facade Pattern)
- Java设计模式Facade门面设计模式
- java设计模式-门面模式Facade
- 【设计模式】之 Facade 门面模式
- 设计模式学习笔记--门面(Facade)模式
- 设计模式:1. 门面模式(Facade)
- 设计模式之门面模式Facade
- 设计模式:门面模式(Facade)
- 设计模式之门面模式---Facade Pattern
- 【设计模式】 门面(Facade)模式
- Java设计模式-门面模式 Facade Pattern
- 设计模式之10 - 门面模式Facade
- 设计模式(十)facade门面模式
- 设计模式-门面模式-facade-python
- hdu 4006 The kth great number
- ubuntu下面进行图片无损压缩
- mfc对话框之间的相互调用
- sigset_t
- SOCKET基本函数
- Tomcat设计模式-门面模式(facade)
- Android通过PHP连接MySQL(读取)
- 利用画线插件如何删除线
- 线程池
- sqlserver char nchar varchar nvarchar 的区别
- [QT]QDir和QFile的基本操作
- 利用qemu写mips汇编程序控制malta显示器
- 习题4.3a
- 软考(二)常见的软件开发模型