Create a 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;public class CharacterEncodingFilter implements Filter { @Override public void init(FilterConfig filterConfig) throws ServletException { } @Override public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException { servletRequest.setCharacterEncoding("UTF-8"); servletResponse.setContentType("text/html; charset=UTF-8"); filterChain.doFilter(servletRequest, servletResponse); } @Override public void destroy() { }}Declare it into your web.xml:
<filter> <filter-name>CharacterEncodingFilter</filter-name> <filter-class>your.package.filter.CharacterEncodingFilter</filter-class></filter><filter-mapping> <filter-name>CharacterEncodingFilter</filter-name> <url-pattern>/*</url-pattern></filter-mapping>
而且你很好。还要确保您的每个JSP页面都包含:
<%@ page contentType="text/html;charset=UTF-8" language="java" %>。如果您的
应用程序在tomcat上运行,请确保将
addURIEncoding="UTF-8"
属性添加到Connector元素。



