Servlet 2.3 and JavaServer Pages 1.2 中关于汉字处理的解决方案
rox 2002-06-28 03:43:50 汉字问题一直是困扰Java程序员的问题之一,最近一位同事在分析tomcat4的例子中的web.xml时,无意中发现了对编码规则的定义,经过测试并针对API文档进行对比后发现,在Servlet 2.3 and JavaServer Pages 1.2中已经可以轻松的使用一种“过滤”方式来解决长期困扰我们的中文
编码问题。下面只是一些简单的整理和提示,希望大家能够自己再去摸索摸索。
1、修改WEB-INF目录下的web.xml如附件中的,并且将附件中的filters目录连同里面的文件拷贝到发布目录的class目录中,例如:tomcat中的webapps\ROOT\WEB-INF\classes目录。其实此目录及文件就是tomcat的webapps\examples\WEB-INF\classes下的。
2、在每个JSP页或Servlet中加入:
request.setCharacterEncoding("EUC_CN");
另:其实,如果不在JSP页面中添加<%@ page language="java" contentType="text/html;charset=gb2312" %>,是可以正常显示汉字的。但往往在某些机器的浏览器中,默认为欧洲编码,使得汉字变成了乱字符,而非?,需手动调整编码加入语句即正常。
语言描述上过于粗糙,希望各位见谅!