package com.qfedu.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;
/**
* Servlet Filter implementation class CharacterEncodingFilter
*/
@WebFilter("/*")
public class CharacterEncodingFilter implements Filter {
private static final String DEFAULT_ENCODING = "UTF-8";
private String currentEncoding;
/**
* @see Filter#doFilter(ServletRequest, ServletResponse, FilterChain)
*/
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
request.setCharacterEncoding(currentEncoding);
response.setCharacterEncoding(currentEncoding);
chain.doFilter(request, response);
}
/**
* @see Filter#init(FilterConfig)
*/
public void init(FilterConfig fConfig) throws ServletException {
System.out.println("CharacterEncoding init");
String encoding = fConfig.getInitParameter("encoding");
currentEncoding = encoding != null ? encoding : DEFAULT_ENCODING;
}
}
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;
/**
* Servlet Filter implementation class CharacterEncodingFilter
*/
@WebFilter("/*")
public class CharacterEncodingFilter implements Filter {
private static final String DEFAULT_ENCODING = "UTF-8";
private String currentEncoding;
/**
* @see Filter#doFilter(ServletRequest, ServletResponse, FilterChain)
*/
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
request.setCharacterEncoding(currentEncoding);
response.setCharacterEncoding(currentEncoding);
chain.doFilter(request, response);
}
/**
* @see Filter#init(FilterConfig)
*/
public void init(FilterConfig fConfig) throws ServletException {
System.out.println("CharacterEncoding init");
String encoding = fConfig.getInitParameter("encoding");
currentEncoding = encoding != null ? encoding : DEFAULT_ENCODING;
}
}