请求响应包装器_JAVA技术篇
javax.servlet.ServletRequestWrapper
javax.servlet.ServletResponseWrapper
javax.servlet.http.HttpRequestWrapper
javax.servlet.http.HttpServletResponseWrapper
这几个包装类的工作方法基本相同,构造器中用request或response对象作为参数,并代理对两个对象的所有方法的调用。这就允许我们这些类,并使用自定义的行为覆盖类的方法。
但它们包装好过后都不能单独工作,都是通过Filter里面的doFilter方法的第三个参数FilterCh骑单车的作文ain类的doFilter方法进行向后面Servlet传递的。
下面是一个将请求参数转换为"ISO-8859-1"的例子:
public class MyWrapp重生之豪门继女er extends HttpServletRequestWrapper {
public MyWrapper {
super;
}
public String getParameter {
String param = super.getParameter;
byte[] bt = param.getBytes;
String end = "";
try {
end = new String;
} catch {
// TODO Auto-generated catch block
e.printStackTrace;
}
return end;
}
public String[] getParameterValues {
String[] allParam = super.getParameterValues;
String[] end=null;
for;
try {
String endParam = new String;
end[i] = endParam;
} catch {
// TODO Auto-generated catch春天的学校作文 block
e.printStackTrace;
}
}
return end;
}
}