解决中文乱码


解决中文乱码

解决后端响应前端时的中文乱码

package org.example.filter;

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

public class CharacterEncodingFilter implements Filter {
    /**
     * 初始化:web服务器启动时就初始化了,等待过滤对象的出现
     * @param filterConfig
     * @throws ServletException
     */
    @Override
    public void init(FilterConfig filterConfig) throws ServletException {
        System.out.println("CharacterEncodingFilter初始化了");
    }

    @Override
    public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
        servletRequest.setCharacterEncoding("utf-8");
        servletResponse.setCharacterEncoding("utf-8");
        servletResponse.setContentType("text/html;charset=utf-8");
        System.out.println("CharacterEncodingFilter执行前");
        //让我们的请求继续走,如果不写,程序到这里就被拦截停止了
        filterChain.doFilter(servletRequest,servletResponse);
        System.out.println("CharacterEncodingFilter执行后");
    }

    /**
     * 销毁
     */
    @Override
    public void destroy() {
        System.out.println("CharacterEncodingFilter销毁了");
    }
}

web.xml配置


    CharacterEncodingFilter
    org.example.filter.CharacterEncodingFilter


    CharacterEncodingFilter
    
    /servlet/*