装饰者模式对HttpServletRequest进行增强
2015-10-21 12:38
573 查看
package cn.web.servlet; import java.io.UnsupportedEncodingException; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequestWrapper; /** * 装饰者模式对HttpServletRequest进行增强。 * 两种方法: * 1. implements HttpServletRequest(所有的方法都要自己来重写,所以,建议使用第二种方法,也就是通过继承HttpServletRequestWrapper,再对自己的需要进行重写相应的方法) * 2. extends HttpServletRequestWrapper(已经用装饰者模式帮我们重写所有的方法,我们只需要重写自己需要重写的方法就可以了,而免去了对其它方法的进行重写的麻烦) * @author Administrator * */ public class EncodingRequest extends HttpServletRequestWrapper { private HttpServletRequest req ; public EncodingRequest(HttpServletRequest request) { super(request); this.req = request; } /** * 增强getParameter()方法,使其能够自行处理get的编码问题 */ @Override public String getParameter(String name) { String value = req.getParameter(name); try { value = new String(value.getBytes("ISO-8859-1"),"UTF-8");//处理get方式 } catch (UnsupportedEncodingException e) { e.printStackTrace(); } return value; } }
主要增强了request的编码问题。。
相关文章推荐
- Xcode7 beta 网络请求报错
- OkHttp资料推荐 和 下载进度监听开源
- HTTP JAVA代码发送POST请求
- http://www.doc88.com/p-982393530428.html
- 网狐 "由于网络问题,您已经与服务器断开连接,请重新连接"
- HTTP 错误 500.21 - Internal Server Error 处理程序“ExtensionlessUrlHandler-ISAPI-4.0_64bit”在其模块列表中有一个错误模块“IsapiModule” 解决方法
- iOS开发网络篇—GET请求和POST请求
- 浅谈ServletContext,HttpServletRequest,HttpServletResponse,HttpSession的获取
- dubbo_网络传输transport
- dubbo_网络传输transport
- TCP/IP协议学习(一) 协议概述
- 问题:https与http有什么区别啊?
- IM,游戏服务端 tcp 框架整理
- 关于Http包引用项目报错问题
- 【笔记】两个修复网络的命令
- tcp的关闭(shutdonw、close、SO_LINGER选项)与 连接断开情形判断
- Node入门训练【1】【创建http服务器并输出helloworld】
- 分享马哥Linux全套视频教程,马哥Linux系列之零基础企业级Linux系统工程师网络高级就业班培训,下载完全免费,要保证5G左右的空间哦
- java https请求
- jquery uploadify上传文件时报HTTP401错误