在 Web 项目中,由于各种诸如前后端或者项目与数据库编码不一致等原因都会造成中文乱码的问题,本文介绍了在项目中保持编码一致的方式,解决乱码的问题。
1. 项目内配置
1.1 web.xml 配置过滤器
web.xml 是项目中配置文件的起始部分,为了保险,应该在第一个 filter 里配置编码,配置方式如下:
1234567891011121314151617
encoding-filter
org.springframework.web.filter.CharacterEncodingFilter
encoding
UTF-8
forceEncoding
true
encoding-filter
/*
1.2 前端页面
如果你的前端页面采用 JSP 或者 VM,则应设置页面的编码格式为 UTF-8 的形式。
1.3 前后端交互
对于前后端交互的方式也可设置编码格式,对于前端向后段传输数据时,可以设置 http 的 header 请求方式:
1
Content-Type: text/html; charset=utf-8
如果你是采用 JQuery 中 ajax 的方式提交给服务端,则应该如下方式设置请求:
1
Content-Type: application/json; charset="utf-8"
服务端返回数据给前端,如果是采用 html 的形式:
1
response.setContentType("text/ht