可以确定的是ssh里,在action操作的字符串都是gbk,java文件是utf-8,过滤器也试过了,还是gbk.
用new String(str.getBytes(), "utf-8")这句返回的字符串也是乱码
1 使用Spring自带的过滤器
<filter>
<filter-name>encodingFilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>utf-8</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>encodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
2 将页面编码设置
<@ page language=”java” pageEcoding=”utf-8” />
3 Tomcate配置编码,server.xml中修改:
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" URIEncoding="UTF-8" />
参考:http://blog.csdn.net/steven_oyj/article/details/4757828
嗯,估计就是Tomcat设置的了
connectionTimeout="20000"
redirectPort="8443" URIEncoding="UTF-8" />
数据库的编码设置了吗?