【SSM】WEB專案中的中文亂碼問題

谷應泰發表於2018-06-01
                <div class="markdown_views">
            <h4 id="1解決html頁面中的中文問題">1.解決HTML頁面中的中文問題:</h4>

為了使HTML頁面很好地支援中文,就必須在每個HTML頁面的頭部增加如下程式碼:

<META http-equiv=Content-Type content="text/html;charset=utf-8">
  • 1

2.解決JSP頁面中的中文問題

為了使JSP頁面很好地支援中文,就必須在每個JSP頁面的頭部增加如下程式碼:

<%@ page contentType="text/html;charset=utf-8" language="java"%>
  • 1

3.解決Servlet響應結果的中文問題

為了使Servlet頁面很好地支援中文,就必須在每個Servlet頁面的頭部增加如下程式碼:

response.setCharacterEncoding("utf-8");
  • 1

4.解決頁面資料傳輸的中文問題

為了使中文資料在各頁面(元件)之間正常傳遞,最佳的方法就是採用編碼過濾器來解決。在WEB.XML中配置一個編碼過濾器,內容如下:

<!--定義編碼過濾器-->

    <filter>
        <filter-name>encodingFilter</filter-name>
        <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>

        <init-param>

              <param-name>encoding</param-name>

              <param-value>gb2312</param-value>
        </init-param>  
    </filter>

    <filter-mapping>
        <filter-name>encodingFilter</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18

5.設定mysql編碼為utf-8:

檢查了很多地方,java檔案都已經是utf-8格式
xml和jsp也都設定了utf-8格式
資料庫也設定了utf8格式
但是插入和更新資料還是問號
最後發現需要在jdbc.properties檔案內指定utf8格式

driver=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3306/ssm?useUnicode=true&characterEncoding=UTF-8
  • 1
  • 2

6.設定tomcat編碼:為解決以get方式提交的引數出現亂碼,新增

修改tomcat下的conf/server.xml檔案, 新增URIEncoding=”UTF-8”

<Connector port="8080" protocol="HTTP/1.1"   
              connectionTimeout="20000"   
              redirectPort="8443" URIEncoding="UTF-8" />  
  • 1
  • 2
  • 3

7.解決@responsebody返回亂碼問題:

在springmvc配置檔案中新增

<mvc:annotation-driven> 

        <!-- 訊息轉換器,解決responseBody返回中外亂碼問題 --> 

        <mvc:message-converters register-defaults="true"> 

            <bean class="org.springframework.http.converter.StringHttpMessageConverter"> 

                <property name="supportedMediaTypes" value="text/plain;charset=UTF-8" /> 

            </bean> 

        </mvc:message-converters> 

    </mvc:annotation-driven> 

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

相關文章