MyEclipse中解决JSP中文乱码的问题
遇到乱码,此时需要添加Filter
1 package com.hello.filter;
2
3
4
5 import java.io.IOException;
6
7 import javax.servlet.*;
8
9 public class CharacterEncodingFilter implements Filter {
10 private String characterEncoding;
11 private boolean enabled;
12 public void init(FilterConfig config) throws ServletException{
13 characterEncoding=config.getInitParameter("characterEncoding");
14 enabled="true".equalsIgnoreCase(config.getInitParameter("enabled").trim());
15 }
16 public void doFilter(ServletRequest request,ServletResponse response,FilterChain chain)throws IOException,ServletException{
17 if(enabled||characterEncoding!=null){
18 request.setCharacterEncoding(characterEncoding);
19 response.setCharacterEncoding(characterEncoding);
20
21 }
22 chain.doFilter(request, response);
23 }
24
25 public void destroy(){
26 characterEncoding=null;
27 }
28
29 }
characterEncoding表示编码方式,enabled表示是否启用编码,分辨从初始化中取值;
1 web.xml配置代码:
2 <filter>
3 <filter-name>characterEncodingFilter</filter-name>
4 <filter-class>com.hello.filter.CharacterEncodingFilter</filter-class>
5 <init-param>
6 <param-name>characterEncoding</param-name>
7 <param-value>UTF-8</param-value>
8 </init-param>
9 <init-param>
10 <param-name>enabled</param-name>
11 <param-value>true</param-value>
12 </init-param>
13 </filter>
14
15 <filter-mapping>
16 <filter-name>characterEncodingFilter</filter-name>
17 <url-pattern>/*</url-pattern>
18 </filter-mapping>

浙公网安备 33010602011771号