在src下添加一个Filter过滤器
package com.kevin.Filter;
import java.io.IOException;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.annotation.WebFilter;
import javax.servlet.annotation.WebInitParam;
@WebFilter(filterName="encodingFilter",urlPatterns="/*")
public class EncodingFilter implements Filter {
String encoding;
@Override
public void init(FilterConfig filterConfig) throws ServletException {
// TODO Auto-generated method stub
}
@Override
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)
throws IOException, ServletException {
// TODO Auto-generated method stub
request.setCharacterEncoding("UTF-8");
response.setCharacterEncoding("UTF-8");
chain.doFilter(request, response);
}
@Override
public void destroy() {
// TODO Auto-generated method stub
System.out.println("destroy");
}
}
主要为两点:
第一个就是注解的配置:@WebFilter(filterName="encodingFilter",urlPatterns="/*")
第二点就是在doFilter方法里指定格式(UTF-8举例):
request.setCharacterEncoding("UTF-8");
response.setCharacterEncoding("UTF-8");
chain.doFilter(request, response);
UTF-8编码过滤器实现
本文介绍了一种通过创建自定义Servlet过滤器来统一设置请求与响应字符集的方法,确保了应用程序内部数据的一致性和正确性。该过滤器利用了@WebFilter注解进行配置,并在doFilter方法中指定了UTF-8编码。
326

被折叠的 条评论
为什么被折叠?



