1. 程式人生 > 資料庫 >解決Linux下Tomcat向MySQL插入資料中文亂碼問題

解決Linux下Tomcat向MySQL插入資料中文亂碼問題

一、問題

在windows上面使用eclipse開發的專案在windows上面執行一切正常,部署到騰訊雲時出現向MySQL資料庫中插入資料是中文亂碼

二、解決辦法

1、嘗試一

直接在linux上面使用insert語句插入中文,正常

2、嘗試二

在tomcat配置檔案server.xml中加入useBodyEncodingForURI="true",不行

3、嘗試三

在tomcat配置檔案server.xml中再加入URIEncoding="UTF-8",不行

4、嘗試四

由於是SSM框架專案,在web.xml中加過過濾器

<filter>
<filter-name>encodingFilter</filter-name>

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

不行

5、嘗試五

在mybatis配置檔案的jdbc路徑後面加上?characterEncoding=utf-8,成功!

修改後的jdbc訪問路徑為:

jdbc:mysql://localhost:3306/daad?characterEncoding=utf-8