普通的getParameter方法中,无论是get或者post提交,都要设置一下请求或者响应的编解码格式(下面以UTF-8为例)
post方法要设置
request.setCharacterEncoding("UTF-8");
get方法要设置
String para = requset.getParameter("name")
String parameter = new String(para.getBytes("iso8859-1"),"UTF-8")
* 需求 :由于每次设置都会很麻烦,所以可以选择增强request的getParameter方法,使请求或响应的编解码格式已经设置完成
* 需求分析 :如果要完成这个功能,可以使用过滤器。首先要写一个filter并集成Filter重写doFilter方法
* 扩展知识 :增强方法的方式都有哪些?
增强方法的方式:
1.基于继承(被增强的对象可以手动的去new)
2.基于装饰者模式(今天要用的)
3.基于动态代理
* 代码实现
创建一个类,用来增强方法,并且继承HttpServletRequestWrapper(java中专门为了加强request的方法写的父类)
在创建的filter中