4、配置MVC的乱码过滤:解决中文乱码

第一种:

在web.xml中配置以下内容:

    <!--配置MVC的乱码过滤-->
    <filter>
        <filter-name>encoding</filter-name>
        <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
        <init-param>
            <param-name>encoding</param-name>
            <param-value>utf-8</param-value>
        </init-param>
    </filter>
    <filter-mapping>
        <filter-name>encoding</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>

 第二种:

编写一个过滤器,过滤所有请求,设置请求的编码:

package com.zhixi.filter;

import javax.servlet.*;
import java.io.IOException;

/**
 * @author zhangzhixi
 */
public class EncodingFilter implements Filter {
    public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
        // 设置编码方式
        request.setCharacterEncoding("UTF-8");
        response.setContentType("text/html;charset=UTF-8");
        // 转发到下一个
        chain.doFilter(request,response);
    }
}

 

注册filter

    <!--编写过滤器servlet-->
    <filter>
        <filter-name>encoding</filter-name>
        <filter-class>com.zhixi.filter.EncodingFilter</filter-class>
    </filter>
    <filter-mapping>
        <filter-name>encoding</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>

 

posted @ 2021-01-14 14:59  Java小白的搬砖路  阅读(186)  评论(0编辑  收藏  举报