| Class | Description |
|---|---|
| SystemResponseWrapper |
类:
SystemResponseWrapper
功能描述: response装饰器 用于获取要发送到浏览器的页面
大致思路为:在response在发送页面前用本修饰器,自定义的PrintWriter,ServletoutPutStream替换掉
servlet的PrintWriter,ServletOutPutStream。然后servlet在使用PrintWriter,ServletO-
utPutStream时将要发送的页面放在了自定义的PrintWriter,ServletOutPutStream中。
在response过滤器修改本方法获取的页面后,用response自己的PrintWriter,HttpServletoutputStr-
eam将修改后的页面发送到浏览器。
这里重载getWriter和getOutputStream是为了兼容tomcat和weblogic,这两种服务器的servlet有区别,
区别为:tomcat调用getWriter,但是weblogic调用getOutputStream。以后再遇见其他的服务器也就这两种
调用的方法了,可以做到服务器的兼容。
而且这样做PrintWriter和ServletOutPutStream都是自定义的PrintWriter和ServletOutPutStream
避免Servlet自身的PrintWriter与ServletOutPutStream同时调用的问题。
最后说明:本实现方法是参考了常规的response过滤器和oscache的页面缓存,对服务器内部的servlet运行也不是
很清楚。以上都是自己的推测,欢迎指正。
创建人: 陈伟
创建日期: 2013-11-20 上午09:27:45
开发环境: JDK6.0 |