javascript
JSP/Servlet中的几个编码的作用
在JSP/Servlet 中主要有以下幾個地方可以設(shè)置編碼,pageEncoding="UTF-8"、contentType="text/html;charset=UTF -8"、request.setCharacterEncoding("UTF-8")和response.setCharacterEncoding ("UTF-8"),其中前兩個只能用于JSP中,而后兩個可以用于JSP和Servlet中。
1、pageEncoding="UTF-8"的作用是設(shè)置JSP編譯成Servlet時使用的編碼。
眾所周知,JSP在服務(wù)器上是要先被編譯成Servlet的。pageEncoding="UTF-8"的作用就是告訴JSP編譯器在將JSP文件編譯成Servlet時使用的編碼。通常,在JSP內(nèi)部定義的字符串(直接在JSP中定義,而不是從瀏覽器提交的數(shù)據(jù))出現(xiàn)亂碼時,很多都是由于該參數(shù)設(shè)置錯誤引起的。例如,你的JSP文件是以GBK為編碼保存的,而在JSP中卻指定pageEncoding="UTF-8",就會引起JSP內(nèi)部定義的字符串為亂碼。
另外,該參數(shù)還有一個功能,就是在JSP中不指定contentType參數(shù),也不使用response.setCharacterEncoding方法時,指定對服務(wù)器響應(yīng)進(jìn)行重新編碼的編碼。
2、contentType="text/html;charset=UTF-8"的作用是指定對服務(wù)器響應(yīng)進(jìn)行重新編碼的編碼。
在不使用response.setCharacterEncoding方法時,用該參數(shù)指定對服務(wù)器響應(yīng)進(jìn)行重新編碼的編碼。服務(wù)器在將數(shù)據(jù)發(fā)送到瀏覽器前,對數(shù)據(jù)進(jìn)行重新編碼時,使用的就是該編碼。
3、request.setCharacterEncoding("UTF-8")的作用是設(shè)置對客戶端請求進(jìn)行重新編碼的編碼。
該方法用來指定對瀏覽器發(fā)送來的數(shù)據(jù)進(jìn)行重新編碼(或者稱為解碼)時,使用的編碼。
4、response.setCharacterEncoding("UTF-8")的作用是指定對服務(wù)器響應(yīng)進(jìn)行重新編碼的編碼。
服務(wù)器在將數(shù)據(jù)發(fā)送到瀏覽器前,對數(shù)據(jù)進(jìn)行重新編碼時,使用的就是該編碼。
推薦閱讀:二手本田CR-V?http://www.taoche.com/buycar/serial/bentiancrv/
轉(zhuǎn)載于:https://blog.51cto.com/5257890/1035120
總結(jié)
以上是生活随笔為你收集整理的JSP/Servlet中的几个编码的作用的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: SQL 注入经验
- 下一篇: JS动态赋值同时触发onchange方法