springmvc亂碼解決


springmvc的中文亂碼問題主要有以下幾種情形:

頁面傳值到后台:

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

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

    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