环境:tomcat 4.1 ,Ecplise
框架:sitemesh+freemarker+webwork
操作系统默认编码:GBK
在网页上显示的中文还是乱码.....
1)开发和编译代码时指定字符集为UTF-8。JBuilder和Eclipse都可以在项目属性中设置。 (我没在项目属性里找到,不过,我自己新建了一个builder,使用javac -encoding utf-8)
2)
使用过滤器,如果所有请求都经过一个Servlet控制分配器,那么使用Servlet的filter执行语句,将所有来自浏览器的请求(request)转换为UTF-8,因为浏览器发过来的请求包根据浏览器所在的操作系统编码,可能是各种形式编码。关键一句:
request.setCharacterEncoding("UTF-8")。
3)在ftl中也声明了charset="UTF-8"
4)所有框架的设置也都设置encoding=UTF-8