您的位置:首页 > 其它

利用ActionServlet 解决中文编码问题

2008-09-19 10:36 253 查看
利用所有struts的代码,都会经过ActionServlet这一特点 我们来继承他的RequestProcessor
覆盖掉里面的processPreprocess方法
默认情况下,struts页面提交的数据采用ISO-8859-1编码。如果此时提交的内容为中文,就会产生乱码现象。
采用扩展ActionServlet的方法,可以解决此问题,具体操作如下:
建立MyProcessor类

public class MyProcessor extends RequestProcessor{

protected boolean processPreprocess(HttpServletRequest arg0, HttpServletResponse arg1) {
// TODO Auto-generated method stub

try {
arg0.setCharacterEncoding("GBK");
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block

e.printStackTrace();
}
arg1.setCharacterEncoding("GBK");
return (true);
}

}
这个类继承了RequestProcessor,并且覆盖了里面的processPreprocess,这时对外界预留的接口!

接着在xml中进行配置

</action-mappings>
<controller processorClass="com.viita.struts.form.MyProcessor"></controller>
<message-resources parameter="com.viita.struts.ApplicationResources" />
</struts-config>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐