主要有三个问题:
1,Struts中资源文件中如果value为中文,Struts乱码
解决办法:使用Eclipse插件Properties Editor
2,在文本域里输入中文,导致Struts乱码
解决办法:使用servlet过滤器filter
最简单的可以借用tomcat下面的filters.SetCharacterEncodingFilter在自己的web.xml配置中加入tomcat中servlet_examples相应Eclipse配置(高手可以自己配!)
本人配置如下:
SetCharacterEncoding
filters.SetCharacterEncodingFilter
encoding
GBK
SetCharacterEncoding
*.do
3,Struts从某些数据库里读出乱码
解决办法:把你要显示成中文的部分重新编码
例如:
while (rs.next())
{
String col1 = rs.getString(1);
String col2 = rs.getString(2);
String col3 = rs.getString(3);
float col4 = rs.getFloat(4);
//convert character encoding
col1=new String(col1.getBytes("ISO-8859-1"),"GB2312");
col2=new String(col2.getBytes("ISO-8859-1"),"GB2312");
col3=new String(col3.getBytes("ISO-8859-1"),"GB2312");
} |
【编辑推荐】
- Red Hat CEO呼吁甲骨文继续保持Java开放
- 自学Javabean迅速成为Java高手
- Java通过JNI调用C语言的方法
- 高手Java核心技术学习笔记
- 成为Java高手需要注意的25个学习目标