2006-07-15

Resin对中文的支持比Tomcat好多了

Views: 11223 | Add Comments

我一直以来都在使用Tomcat作为JSP Web服务器。Tomcat对中文的支持没有太大的问题,一些常见的问题都能轻易解决。最近使用Resin,发现Resin对中文的支持更加优秀。下面我对Tomcat5.0.28和Resin3.0.19默认安装不做任何设置后的中文乱码情况做个比较。

GET提交中文表单

无论是否设置request.setCharacterEncoding(),Tomcat获取的中文都出现乱码。而Resin直接获取,并不出现乱码。如果想Tomcat不出现乱码,那么你必须设置server.xml中的Connector(定义访问端口的那一个)标签的URIEncoding属性。

POST提交中文表单

只有设置了正确的request.setCharacterEncoding(),Tomcat获取的中文才不出现乱码。而Resin直接获取,并不出现乱码。

include file中文文件

如果被包含的JSP文件中有中文字符串,那么该字符串必须从系统当前编码转为ISO-8859-1,如String s = new String(("中文").getBytes("ISO-8859-1"),"UTF-8");,否则出现乱码。而Resin直接赋值字符串,String s = "中文";。

Tomcat有这些古怪的行为,是因为它内部总是使用ISO-8859-1作为编码字符集。它读取JSP文件时,假设JSP文件是以ISO-8859-1编码的。

所以在Tomcat之外我们有另一个选择Resin。

相关链接:

Related posts:

  1. JSP中文乱码解决之道
  2. C/C++编程的现代习惯
  3. 编写JSP/PHP+MySQL留言本
  4. C++ const& 的坑
  5. Java中文问题及最优解决方法
Posted by ideawu at 2006-07-15 06:37:35

Leave a Comment