论坛首页 Java企业应用论坛

讨论一下jsp中编解码的问题

浏览 2449 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2013-10-09  
有一种观点如下,请大家围观并踊跃讨论:
pageEncoding是jsp文件本身的编码
contentType的charset是指服务器发送给客户端时的内容编码
JSP要经过两次的“编码”,第一阶段会用pageEncoding,第二阶段会用utf-8至utf-8,第三阶段就是由Tomcat出来的网页, 用的是contentType。
第一阶段是jsp编译成.java,它会根据pageEncoding的设定读取jsp,结果是由指定的编码方案翻译成统一的UTF-8 JAVA源码(即.java),如果pageEncoding设定错了,或没有设定,出来的就是中文乱码。
第二阶段是由JAVAC的JAVA源码至java byteCode的编译,不论JSP编写时候用的是什么编码方案,经过这个阶段的结果全部是UTF-8的encoding的java源码。

请大家讨论一下,这个观点是否正确
   发表时间:2013-10-09  
我先说说自己的看法。我认同这种观点中的大部分内容,比如pageEncoding是jsp文件本身的编码 。contentType的charset是指服务器发送给客户端时的内容编码 。
JSP要经过两次的“编码”,第一阶段会用pageEncoding,第二阶段会用utf-8至utf-8,第三阶段就是由Tomcat出来的网页, 用的是contentType。

但是,对于观点中说的jsp转换成servlet时.java文件的编码是utf-8,我不确定这个是否有事实依据。大家都说说
0 请登录后投票
   发表时间:2013-10-09  
大家可以看看这个文章所阐述的观点
http://developer.51cto.com/art/201106/270666.htm
0 请登录后投票
   发表时间:2013-10-14  
我觉得文件用什么编码完全是你指定,你怎么就确定都是UTF-8呢?
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics