解决乱码的最佳实践

    技术2022-05-19  17

    解决乱码问题最好全程使用 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>

    bluishglc 认证博客专家 博客专家 架构师,博客专家,14年IT系统开发和架构经验,对大数据、企业级应用架构、SaaS、分布式存储和领域驱动设计有丰富的实践经验。对Hadoop/Spark 生态系统有深入和广泛的研究,参与过Hadoop商业发行版的开发,目前负责企业数据中台的架构设计和开发工作,热衷函数式编程,著有《大数据平台架构与原型实现:数据中台建设实战》https://item.jd.com/12677623.html 一书。

    最新回复(0)