天天看點

(轉)spring mvc 中文亂碼問題解決

在eclipse環境裡,頁面傳輸資料的時候通常用ISO-8859-1這個字元集

可以用 str = new String(str.getBytes("ISO-8859-1"), "GBK"); 轉碼

str是你頁面得到的字元串,後面的表示從"ISO-8859-1"轉到"GBK",或者你轉成别的也可以

16:35 浏覽 (1550) 評論 (2) 分類: 技術 收藏 相關推薦 評論

chenlb 2007-09-09 回複 

不好意思多寫了 

Java代碼 

<filter>  

  <filter-name>Set Character Encoding</filter-name>  

  <filter-class>filters.SetCharacterEncodingFilter</filter-class>  

  <init-param>  

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

  <param-value>utf8</param-value>  

  </init-param>  

</filter>  

 <filter-mapping>  

  <url-pattern>/*</url-pattern>  

 </filter-mapping>  

如果你這樣str = new String(str.getBytes("ISO-8859-1"), "GBK"); 轉碼。 寫出來程式通用性不好,而且每次有中文都要這樣,用過慮器好。但隻對post方式有效。get方式看, http://www.blogjava.net/chenlb/archive/2007/07/17/130922.html 

如果是spring 

用spring提供的過慮器,在web.xml裡加 

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

 <filter>

  <filter-name>Set Character Encoding</filter-name>

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

  <init-param>

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

  <param-value>utf8</param-value>

  </init-param>

 </filter>

  <filter-mapping>

  <url-pattern>/*</url-pattern>

  </filter-mapping>

如沒用spring,用tomcat裡面的例子(在webapps\servlets-examples\WEB-INF\classes\裡把filters目錄放到你的classer\下,其實隻要SetCharacterEncodingFilter就可以了,同樣在web.xml裡加 

http://xhy0422.javaeye.com/blog/51084

繼續閱讀