米勒 画家:struts 下的中文只能utf8编码么?

来源:百度文库 编辑:高考问答 时间:2024/04/26 22:43:11
写一个论坛,用的struts,有些文件是jsp的,有些文件时html的。jsp的可以使用utf编码,html一般都是gbk的,怎么统一起来?

Struts采用什么编码并不重要,正如你所说的一样,要把握在整个项目中,数据流的入口和出口,如果论坛有必要支持国际化,建议在入口和出口中增加过滤器,并将所有数据流过滤成UTF-8,如没有国际化的需求,完全可以采用GB2312或GBK。
1. 入口的过滤可以在Servlet中增加这样的语句:request.setCharacterEncoding("yourEncoding");
如果论坛要求不高可以在每次request.getParameter()之前,设置一下request.setCharacterEncoding("yourEncoding"); 。
2. 出口的过滤要看你用的是什么数据库,不同的数据库都可以设置编码方式;另外要看你的论坛在什么样的操作系统下运行,因为Java虚拟机在Windows和Linux平台下的字符编码处理有些区别。
做到上面两点,再将你的JSP页面设为和上述统一的字符编码,所有的问题都会迎刃而解了。

request.setCharacterEncoding("GBK");

这条语句的意思就是说,把request里的object都用GBK编码表示。
欢迎来信探讨oatn@163.com