java使用post請求時出現亂碼怎么解決?針對這個問題,這篇文章給出了相對應的分析和解答,希望能幫助更多想解決這個問題的朋友找到更加簡單易行的辦法。
Java WEB項目中,中文亂碼是一個經常遇到而又非常頭痛的問題,其中最容易出現亂碼的環節就是在瀏覽器向服務器發送請求的過程。下邊就這一問題介紹解決方法,希望會幫助到大家。以下轉碼都是以UTF-8為參考,若為其他編碼格式可自行修改。
一、Response亂碼
(1)設置服務器端的編碼:response.setCharacterEncoding("UTF-8");
上邊此設置一定要再response.getWriter()方法之前;
(2)通知瀏覽器發送的數據格式:response.setContentType("text/html;charset=UTF-8");
(3)瀏覽器使用UTF-8進行解碼。
二、Request亂碼
1.Post方式提交,參數存在于請求體中,只需要進行此設置即可:
request.setCharacterEncoding("UTF-8");
2.Get方式提交,參數會拼接在URI地址后邊,服務器默認按照iso8859-1進行解碼,有兩種解決方法:
(1).在程序中修改接收到的請求編碼(此方法每次請求都需要轉碼,不推薦)
String str = request.getParameter("s"); str = new String(str.getBytes("iso8859-1"),"UTF-8")
(2)在Tomcat安裝文件夾中找到server.xml文件,查找<Connector />標簽進行修改(此方法一勞永逸)
<Connector URIEncoding="UTF-8" port="8080" maxHttpHeaderSize="8192" maxThreads="150" minSpareThreads="25" maxSpareThreads="75" connectionTimeout="20000" disableUploadTimeout="true" />
只需在此標簽中增加 URIEncoding="UTF-8" ,然后重啟tomcat即可。
關于java使用post請求時出現亂碼怎么解決就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。