当前位置: 代码迷 >> Web前端 >> Ext2+struts2的汉语言乱码解决
  详细解决方案

Ext2+struts2的汉语言乱码解决

热度:495   发布时间:2013-11-08 17:52:01.0
Ext2+struts2的中文乱码解决

  在一次页面浏览过程中,客户端对一个URL发起浏览请求,服务端针对这次请求进行解析,而在字符编码解析方面,首先他检查该页面中的字符编码设置,即<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />,这样,在页面中显示声明了字符编码为UTF-8,服务器就会将该页面用UTF-8的编码输出,而如果页面中没有显示声明,在服务器中都有一个默认的字符编码,比如Apache通过AddDefaultCharset GB2312设置为GB2312,针对没有声明的文件,他会用默认编码输出,这个时候,如果页面的真正内容是UTF-8编码的话不会出现问题,如果在服务器中用GB2312编码保存,而页面输出又是UTF-8,这样就会出现乱码。

  而在Ext中的提交数据的过程中,Ext框架用的是都是UTF-8编码,而且通过JSON提交的数据也是UTF-8编码,所以要求所有的文件都是UTF-8编码。?

1```修改数据库的字符集为UTF8```

2```Hibernate的配置``

?程序代码

<property name="connection.url">jdbc:mysql://localhost:3306/S2blog?useUnicode=true&characterEncoding=UTF-8</property>
?

3````在struts.properties文件中修改Struts2的传输编码``

?
struts.i18n.encoding=UTF-8
?

4```在Ext.onReady中设置Ext的传输编码

?
Ext.lib.Ajax.defaultPostHeader += '; charset=utf-8'
?
  相关解决方案