新中文乱码问题

1.在web页面提交表单产生乱码的问题:

 如果用get方式提交表单则在tomcat的server.xml中如下配置就行

<Connector port="8080" protocol="HTTP/1.1" maxThreads="150" connectionTimeout="20000"
  redirectPort="8443" URIEncoding="UTF-8"/>
如果应post方式提交则不用设置

2.如果用struts或者servlet,则可以在web.xml中设置filter。然后req.setCharacterEncoding(utf-8)进行设置。如果加上spring则直接在web.xml
中配置spring的过滤器。
<filter>     
  <filter-name>Set Character Encoding</filter-name>     
  <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>     
  <init-param>     
    <param-name>encoding</param-name>     
    <param-value>utf8</param-value>     
  </init-param>     
</filter>     
 <filter-mapping>     
    <filter-name>Set Character Encoding</filter-name>     
    <url-pattern>/*</url-pattern>     
 </filter-mapping>   

  3.保证数据库连接url的编码和数据库编码相同

  数据库的url编码是:jdbc:mysql://localhost:3306/test?useUnicode=true&amp;characterEncoding=utf-8"

      然后在mysql中show create table xxx;看这个表的编码

      show variables like 'char%' 看数据库的编码,可以在my.ini中进行设置

     4.mysql的dos界面不支持utf8,所以如果用utf8插入的话显示的是乱码。但是用图形界面看的话就是好的

 

 

posted on 2014-01-05 15:59  叶龙  阅读(169)  评论(0编辑  收藏  举报