<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);">在登录案例的基础上</span>
1.采用注解,设置转换的编码
@LoginFilter
重点内容
@WebFilter(dispatcherTypes = {DispatcherType.REQUEST }
, urlPatterns = "/*" ,initParams={
@WebInitParam(name="charset",value="utf-8")})
public class LoginFilter implements Filter {//
private FilterConfig config;
public void destroy() {
}
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
HttpServletRequest req = (HttpServletRequest)request;
//编码处理
String charset = config.getInitParameter("charset");
if(charset==null) {
charset = "utf-8";
}
req.setCharacterEncoding(charset);
}
public void init(FilterConfig fConfig) throws ServletException {
this.config = fConfig;
}
}
2.采用Web.xml配置
<filter>
<filter-name>LoginFilter</filter-name>
<filter-class>com.lyt.filter.LoginFilter</filter-class>
<init-param>
<param-name>EXCLUDE_PAGE</param-name>
<param-value>failure.jsp;login.jsp;LoginServlet</param-value>
</init-param>
<init-param>
<param-name>charset</param-name>
<param-value>utf-8</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>LoginFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>