後臺接收前臺中文資訊亂碼的解決方案
問題前言:
最近在更新程式碼之後,發現前臺展示中文亂碼,但是一樣的程式碼放在了測試環境卻是正常的,原因是本機的tomcat配置有問題,這個問題找了好久,希望給大家啟發
1.配置tomcat 的server.xml檔案,在設定埠處後面,填寫編碼格式
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" URIEncoding="UTF-8" /> <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" URIEncoding="UTF-8"
2.在jsp中新增如下
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8" contentType="text/html; charset=UTF-8"%>
3.配置工程下的web.xml,注意修改下面粗體部分
<filter> <filter-name>setEncoding</filter-name> <filter-class>com.xxx.filter.CharsetFilters</filter-class> <init-param> <param-name>coding</param-name> <param-value>UTF-8</param-value> </init-param> </filter> <filter-mapping> <filter-name>setEncoding</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>
4.再就是修改eclipse配置
Web工程檔案編碼修改方式 Window -> Preference -> Content types 編碼都設定為UTF-8