解决乱码的最佳实践

解决乱码问题最好全程使用 utf-8 编码,具体需要设置的点包括:


1、页面内容使用 utf-8 格式保存,在页面中加入 <%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%> 和 <meta http-equiv="Content-Type" content="text/html; charset=utf-8">


2、服务器端的 server.xml 中设定 useBodyEncodingForURI = true,位置如下:


<Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" useBodyEncodingForURI="true"/>

 

3、使用过滤器,过滤器设定编码为 utf-8
对此Spring已经提供了现成的过滤器可供配置,具体做法是在web.xml中加入如下片断:


<filter>
        <filter-name>encodingFilter</filter-name>
        <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
        <init-param>
            <param-name>encoding</param-name>
            <param-value>UTF-8</param-value>
        </init-param>
        <init-param>
            <param-name>forceEncoding</param-name>
            <param-value>true</param-value>
        </init-param>
    </filter>
    <filter-mapping>
        <filter-name>encodingFilter</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>


你可能感兴趣的:(java,spring,服务器,filter)