关于SpringMVC乱码问题

关于SpringMVC运行Tomcat控制台出现乱码的情况(在网上找到一种方法亲测有效)

找到tomcat文件夹中的conf包下的logging.properties中找到

java.util.logging.ConsoleHandler.encoding = UTF-8

将这行代码注销改为

java.util.logging.ConsoleHandler.encoding = GBK

重启tomcat即可!

关于SpringMVC提交表单时,网页出现乱码情况,有两种解决方法

方法一(自定义过滤器):

 1 public class EncodingFilter implements Filter {
 2     @Override
 3     public void init(FilterConfig filterConfig) throws ServletException {
 4 
 5     }
 6 
 7     @Override
 8     public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
 9         servletRequest.setCharacterEncoding("utf-8");
10         servletResponse.setCharacterEncoding("utf-8");
11 
12         filterChain.doFilter(servletRequest,servletResponse);
13     }
14 
15     @Override
16     public void destroy() {
17 
18     }
19 }

在web.xml中配置过滤器

1     <filter>
2         <filter-name>encoding</filter-name>
3         <filter-class>com.kuang.filter.EncodingFilter</filter-class>
4     </filter>
5     <filter-mapping>
6         <filter-name>encoding</filter-name>
7         <url-pattern>/*</url-pattern>
8     </filter-mapping>

注意点: / 与 /* 的区别

/ : 只匹配所有请求,不会去匹配jsp页面

/* : 匹配所有请求,包括jsp页面


方式二(SpringMVC自带的过滤器)

 1 <filter>
 2         <filter-name>characterEncodingFilter</filter-name>
 3         <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
 4         <init-param>
 5             <param-name>encoding</param-name>
 6             <param-value>UTF-8</param-value>
 7         </init-param>
 8     </filter>
 9     <filter-mapping>
10         <filter-name>characterEncodingFilter</filter-name>
11         <url-pattern>/*</url-pattern>
12     </filter-mapping>


猜你喜欢

转载自www.cnblogs.com/peanutBlog/p/12913972.html
今日推荐