Java平臺遇到的兩類問題:html
1.源代碼中文亂碼問題:web
a.Java文件,中文亂碼,配置IDE的Preference的編碼格式,總有一款適合你。瀏覽器
b.HTML(JSP、....)文件,中文亂碼,添加並設置HTML的contentType、charset便可。<%@ page contentType="text/html;charset=GBK"%>app
2.應用程序中輸入中文亂碼問題:編碼
a.selvert的過濾器filter處理中文亂碼問題:url
修改web.xml中的配置參數:server
<filter> <!--注意這裏是filter,不要配置成servlet-->
<filter-name>CharactorFilter</filter-name> <!--過濾器名稱-->
<filter-class>cn.com.Filter.CharactorFilter</filter-class> <!--過濾器的完整類名-->
<init-param> <!--初始化參數-->
<param-name>encoding</param-name> <!--參數名稱-->
<param-value>utf-8</param-value> <!--參數值-->
</init-param>
</filter>
<filter-mapping> <!--過濾器映射-->
<filter-name>CharactorFilter</filter-name><!--過濾器名稱-->
<url-pattern>/*</url-pattern><!--URL映射,給全部頁面處理亂碼-->
</filter-mapping>xml
b.Tomcat支持中文的配置問題: 更改 Tomcat安裝目錄下conf\server.xml,指定瀏覽器的編碼格式爲「簡體中文」:htm
<Connector port="8080" maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" redirectPort="8443" acceptCount="100"
connectionTimeout="20000" disableUploadTimeout="true" URIEncoding='GBK' />utf-8
注意:Spring MVC Controller中解析GET方式的中文參數會亂碼的問題:Spring的Filter只對HTTP的Post方法作了過濾處理 ,對Get方法則未作處理,所以不管如何配置Filter均是無效的,所以只能上溯一層,即從WEB應用容器層到Tomcat層配置Server.xml的Connector的URIEconding=「UTF-8"屬性便可。