众所周知jsp对于字符编码的多元化的支持,而在我们熟知的struts框架下(外国人的玩意不怎么对中文友好),jsp页面提交给actionform的中文字符集则会出现乱码的情况,在struts-1.3.8版本表现的尤为突出,那么我们怎么解决这一难题呢?下来,我就给大家介绍一种简单的办法,我们在myeclipse工程下建立一个类文件MacServlet.java该类文件继承ActionServlet(前提:导入struts框架文件),然后覆盖掉process方法,然后在方法体内添加request.setCharacterEncoding("UTF-8");response.setCharacterEncoding("UTF-8");(注:UTF-8支持中文,jsp页面也需要设置为UTF-8);好了,现在这个类建立完毕,现在只需要将你的web.xml文件稍作修改就可以实现中文不乱码的Struts。下面附上我的web.xml文件作参考,这个方法省去了传统过滤器或者单条数据过滤的繁琐,希望会对大家有所帮助。- <servlet-name>actionservlet</servlet-name>
- <servlet-class>包名+类文件名</servlet-class>
- <init-param>
- <param-name>strutsconfig</param-name>
- <param-value>/WEB-INF/struts-config.xml</param-value>
- </init-param>
- <load-on-startup>0</load-on-startup>
- </servlet>
- <servlet-mapping>
- <servlet-name>actionservlet</servlet-name>
- <url-pattern>*.do</url-pattern>
- </servlet-mapping>
复制代码 |