- 相關(guān)推薦
Java Web項(xiàng)目中解決中文亂碼方法
Java具有簡(jiǎn)單性、面向?qū)ο、分布式、健壯性、安全性、平臺(tái)的獨(dú)立與可移植性、多線程、動(dòng)態(tài)性等特點(diǎn)。下文是為大家精選的Java Web項(xiàng)目中解決中文亂碼方法,歡迎大家閱讀參考。
第一種情況:調(diào)用jsp頁面中文顯示亂碼
問題描述:通過瀏覽器調(diào)用jsp頁面,在瀏覽器中顯示的中文內(nèi)容出現(xiàn)亂碼。
解決方法:首先確認(rèn)本jsp在編輯器中保存文件內(nèi)容時(shí),使用的是utf-8的編碼格式,然后在jsp頁面的開始處添加就可以解決這種中文亂碼問題
第二種情況:調(diào)用servlet頁面顯示亂碼
問題描述:通過瀏覽器調(diào)用servlet,servlet在瀏覽器中顯示的內(nèi)容出現(xiàn)亂碼。
解決方法:在servlet使用response對(duì)象輸出前,先執(zhí)行response.setContentType("text/html;charset=utf-8");設(shè)定輸出內(nèi)容的編碼為utf-8。
第三種情況:post表單傳遞參數(shù)亂碼
問題描述:通過jsp,html,或servlet中的表單元素把參數(shù)提交給對(duì)應(yīng)的jsp或者servlet時(shí),在接收的jsp或servlet中接收到的參數(shù)中文顯示亂碼。
例如:提交jsp代碼如下:接收參數(shù)的jsp代碼如下:接收表單
用戶名:
密 碼:
解決方法:在接收post提交的參數(shù)前,使用request.setCharacterEncoding("utf-8")設(shè)定接收參數(shù)的內(nèi)容格式為utf-8編碼。見接收表單中的插入內(nèi)容即可。當(dāng)然這種亂碼問題最好使用中文過濾器的方法最好
第四種情況:URI方式傳遞參數(shù)亂碼
問題描述:使用表單傳遞參數(shù),可以通過post或get方式,不適用表單,還可以使用鏈接方式傳遞參數(shù),這種傳遞參數(shù)方式本質(zhì)上就是get方式傳遞參數(shù),這種方式中傳遞的參數(shù)出現(xiàn)中文時(shí)也可能出現(xiàn)亂碼。如:顯示用戶名和密碼
解決方法:?jiǎn)栴}本質(zhì)是get方式傳遞的參數(shù)內(nèi)容默認(rèn)編碼方式問ISO8859-1,而且使用request.setCharacterEncoding("utf-8")也無法解決問題,要解決這個(gè)問題,修改tomcat服務(wù)器的配置文件。修改tomcat目錄下的conf/server.xml文件的第43行:修改前內(nèi)容:
修改后內(nèi)容:
這樣就可以解決這種類型的亂碼問題。
第五種情況:
問題描述:在使用一些類庫或者框架時(shí),為了實(shí)現(xiàn)頁面內(nèi)容國(guó)際化,需要編寫對(duì)應(yīng)的properties文件。而properties文件中的中文內(nèi)容在顯示的時(shí)候也會(huì)出現(xiàn)亂碼。
解決方法:這個(gè)亂碼問題可以通過jdk中的native2ascii工具解決。使用如下命令:native2ascii -encoding utf-8 display.properties display_zh_CN.properties出現(xiàn)亂碼問題的原因是因?yàn)閖ava編譯器只能處理Latin-1或unicode編碼的字符文件。
【Java Web項(xiàng)目中解決中文亂碼方法】相關(guān)文章:
Java Web項(xiàng)目中解決中文亂碼的方法10-04
Java如何解決URL中文亂碼10-20
關(guān)于php中文亂碼的解決方法07-09
如何解決java亂碼06-07
解決PHP中文亂碼問題05-27
java如何解決亂碼問題06-20
完美解決PHP中文亂碼問題07-18
php中文亂碼問題的解決方案08-13