[Java]攔截器處理字符編碼統一

package com.iweb.filter;

import javax.servlet.*;
import javax.servlet.annotation.WebFilter;
import javax.servlet.annotation.WebInitParam;
import java.io.IOException;

//所有的字符編碼都需要統一,所以這裏用全部
@WebFilter(value = "/*",initParams = {
        @WebInitParam(name="code",value = "utf-8")
})
public class EncodeFilter implements Filter {

    // 獲得指定的字符編碼

    private String code;

    @Override
    public void init(FilterConfig filterConfig) throws ServletException {
        String code = filterConfig.getInitParameter("code");

    }

    @Override
    public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
        // 設置字符編碼,進行統一
        servletRequest.setCharacterEncoding(code);
        servletResponse.setCharacterEncoding(code);
        filterChain.doFilter(servletRequest, servletResponse);
    }

    @Override
    public void destroy() {
        // nothing
    }
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章