JSP中文亂碼解決方案,jsp亂碼解決方案

來源:互聯網
上載者:User

JSP中文亂碼解決方案,jsp亂碼解決方案

學習JSP的過程中總會碰到中文亂碼問題,有的是post方式提交沒問題,用get方式提交有亂碼,還有的是部署到tomcat中沒問題,在Eclipse中啟動tomcat,發現用get方式提交有亂碼。產生亂碼的根源是tomcat、java所用的編碼方式不同。所以要解決中文亂碼問題,首先要保證各個頁面所用的編碼方式一致,不管是html頁面還是jsp頁面,都指定為同一種編碼方式,如GB18030。

(1)html頁面

<meta charset="GB18030">

(2)jsp頁面

<%@ page language="java" contentType="text/html; charset=GB18030"
pageEncoding="GB18030"%>

<meta http-equiv="Content-Type" content="text/html; charset=GB18030">

可以在Eclipse裡設定html頁面及jsp頁面的編碼方式統一為GB18030

 

接下來,就是指定tomat所用的編碼方式了。開啟tomcat目錄下的conf目錄下的server.xml檔案,修改

<Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443"/>該行為:

<Connector port="8080" protocol="HTTP/1.1" URIEncoding="gb2312"
connectionTimeout="20000"
redirectPort="8443" useBodyEncodingForURI="true" />

注意紅色加粗部分是新增的。改好後,需要重啟tomcat生效。

為了防止在Eclipse中啟動tomcat,用get方式提交有亂碼。需要對Eclipse中配置的tomcat的設定檔做同樣的修改。

 

最後,在get或post接收頁面寫上:

request.setCharacterEncoding("GB18030");

通過上面的步驟可以較好的解決JSP中文亂碼問題。

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.