更新時(shí)間:2022-06-09 09:57:02 來源:動(dòng)力節(jié)點(diǎn) 瀏覽1230次
1.前后端編碼不一致
2.瀏覽器默認(rèn)使用UTF-8碼表進(jìn)行編碼 ,Servlet使用ISO-8859-1碼表進(jìn)行編碼
3.傳輸和接收方編碼不一致導(dǎo)致亂碼的產(chǎn)生
post請(qǐng)求
在servlet的請(qǐng)求方式中設(shè)置
//給請(qǐng)求中的參數(shù)設(shè)置編碼格式
request.setCharacterEncoding("UTF-8");
get請(qǐng)求
在Tomcat根目錄/conf/server.xml中設(shè)置編碼格式
<Connector URIEncoding="UTF-8" port="8080" protocol="HTTP/1.1"
connectionTimeout="20000" redirectPort="8443"
/>
那么在啟動(dòng)服務(wù)器的時(shí)候就會(huì)讀取到URIEncoding的屬性配置,然后再調(diào)用自己的一個(gè)setURIEncoding方法完成設(shè)置,形參的值為我們?cè)O(shè)置的UTF-8
protected String URIEncoding = null;
public void setURIEncoding(String URIEncoding) {
this.URIEncoding = URIEncoding;
setProperty("URIEncoding", URIEncoding);
}
在servlet的請(qǐng)求方式中設(shè)置
//設(shè)置響應(yīng)內(nèi)容的編碼格式
response.setContentType("text/html;charset=UTF-8");
在servlet的請(qǐng)求方式中設(shè)置
response.sendRedirect(URLEncoder.encode);
以上就是關(guān)于“Servlet中文亂碼處理的方法”介紹,大家如果對(duì)此比較感興趣,想了解更多相關(guān)知識(shí),可以關(guān)注一下動(dòng)力節(jié)點(diǎn)的Java在線學(xué)習(xí),里面的課程內(nèi)容從入門到精通,細(xì)致全面,很適合沒有基礎(chǔ)的小伙伴學(xué)習(xí),希望對(duì)大家能夠有所幫助。
0基礎(chǔ) 0學(xué)費(fèi) 15天面授
有基礎(chǔ) 直達(dá)就業(yè)
業(yè)余時(shí)間 高薪轉(zhuǎn)行
工作1~3年,加薪神器
工作3~5年,晉升架構(gòu)
提交申請(qǐng)后,顧問老師會(huì)電話與您溝通安排學(xué)習(xí)