SPRINGMVC中的中文亂碼處理


說到亂碼處理,對於很多人來說是非常經常遇到的,現在來總結一下web工程中中文亂碼處理的幾個步驟,亂碼處理大致可以分為一下幾步,分別從頁面到數據庫:

  頁面傳值到后台:

    工程編碼(最后一開始建立工程就設置整個工程的編碼)

    頁面的幾種編碼屬性的設置

    get提交方式亂碼的處理

    post提交方式亂碼的處理

  后台到數據庫亂碼:

    數據庫連接字符串指定編碼格式

    數據庫編碼屬性(也是一開始設置數據庫的時候就要設置好,不然要重新建數據庫)

 

  1.頁面的幾種編碼屬性

pageEncoding="UTF-8" jsp頁面編碼,jsp文件本身的編碼
contentType
="text/html; charset=UTF-8" web頁面顯示的編碼,jsp頁面輸出流在瀏覽器中顯示的編碼
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> web界面的輸入編碼,就是輸入框中輸入的字體編碼。

  2.get提交方式亂碼處理(一般是由於tomcat引起的,所以需要設置tomcat的編碼)

  改tomcat中server.xml中的port=“8080”,加上一個 URIEncoding=utf-8 如下圖

  3.post提交方式亂碼處理(在web.xml中設置編碼過濾器)

復制代碼
<!-- 解決工程編碼過濾器 -->     <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>
復制代碼

  4.數據庫連接字符串指定編碼

        jdbc.url=jdbc:mysql://localhost:3306/student?characterEncoding=UTF-8

  這幾種辦法大部分的亂碼問題是可以解決的,也不排除,會有一些莫名其妙的亂碼問題,當然對於那些比較另類的亂碼問題,大家可以對亂碼的字符串進行轉碼,看看是否有效果,轉碼的代碼百度隨便找,這里就不給出來了


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM