SpringMVC 中mysql jdbc 中文亂碼解決方案

對于SpringMVC mysql數(shù)據(jù)庫而言,解決中文亂碼,可以從3個方向考慮。

1. 通過修改mysql服務(wù)器端的配置文件/etc/mysql/my.cnf來支持中文

比如:

[mysql]
default-character-set=utf8

2. 在客戶端或者JDBC連接時定制支持中文的編碼格式

(通常使用UTF-8)
這樣插入數(shù)據(jù)的時候,讓mysql為自動為我們轉(zhuǎn)碼,如果是通過DriverManager.getConnection(url)編碼方式操作JDBC,可以在JDBC的url中追加useUnicode=true&characterEncoding=UTF-8解決亂碼問題。

jdbc.url=jdbc:mysql://127.0.0.1:3306/mydb?useUnicode=true&characterEncoding=UTF-8

3. 表單提交controller獲得中文參數(shù)后亂碼解決

jsp頁面中文輸入,到controller亂碼,這時候需要修改設(shè)置的是在web.xml文件中添加一個編碼的過濾器(filter)將編碼統(tǒng)一為UTF-8,如下
(注意,需要設(shè)置forceEncoding參數(shù)值為true)

<filter>  
        <filter-name>characterEncodingFilter</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>characterEncodingFilter</filter-name>  
        <url-pattern>/*</url-pattern>  
    </filter-mapping>  

注意: jsp頁面編碼設(shè)置為UTF-8
form表單提交方式為必須為post,get方式下面spring編碼過濾器不起效果

4. Spring MVC RequestParam的中文亂碼

配置一下tomcat 的server.xml 文件。
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" URIEncoding = "UTF-8"/>

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,534評論 19 139
  • Spring Boot 參考指南 介紹 轉(zhuǎn)載自:https://www.gitbook.com/book/qbgb...
    毛宇鵬閱讀 47,261評論 6 342
  • 編碼問題一直困擾著開發(fā)人員,尤其在 Java 中更加明顯,因為 Java 是跨平臺語言,不同平臺之間編碼之間的切換...
    x360閱讀 2,578評論 1 20
  • 1. Java基礎(chǔ)部分 基礎(chǔ)部分的順序:基本語法,類相關(guān)的語法,內(nèi)部類的語法,繼承相關(guān)的語法,異常的語法,線程的語...
    子非魚_t_閱讀 34,638評論 18 399
  • 還記得,我給你的那條圍巾么? 這是我一針一線為你所織的,花了我三個月之久 在你生日的晚上,我?guī)е?把它悄悄地放在...
    七年涼安閱讀 529評論 3 7

友情鏈接更多精彩內(nèi)容