本文章前提条件是你确认所有的页面编码和文件编码都很统一的情况下:
我所有页面编码,文件编码全部都是统一utf-8,但是还是乱码...我很郁闷..因为以前都是这样就可以了
后来发现struts2.1.6是被公认的存在乱码bug..
解决方法是在web.xml里的
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
修改为
<filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
尽管这个方法是被struts2丢弃的..但是目前没有办法了..当然也可以自己写一个filter来过滤.
如果还是乱码..那多半就是hibernate的原因了
在url加上
jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf8
设置为utf-8编码就可以了..