編碼轉(zhuǎn)換過濾器:
新建過濾器 -》 新建一個(gè)成員變量,eg:private String charEncoding=null; ?-》 在init()方法中添加:
charEncoding=fConfig.getInitParameter("encoding");
if(charEncoding==null){
throw new ServletException("Encoding中filter的編碼設(shè)置為空");
}
-》接下來(lái)編寫doFilter()方法中的業(yè)務(wù)邏輯:
if(charEncoding.equals(request.getCharactrerEncoding)){
request.setCharacterEncoding(charEncoding);
}
response.setCharacterEncoding(charEncoding);
chain.doFilter(request,response);
-》接下來(lái)在web.xml配置一下:
<filter>
<filter-name>EncodingFilter</filter-name>
<filter-class>hp.filter.EncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param></filter>
<filter-mapping>
<filter-name>EncodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>