现在的位置: 首页 > 综合 > 正文

ActionForm中文乱码问题解决方案

2013年02月21日 ⁄ 综合 ⁄ 共 841字 ⁄ 字号 评论关闭

 

原文链接http://www.cnblogs.com/cookies9/archive/2011/01/09/1931312.html

 

就是在一个JSP页面接收ActionForm的属性时,如果输入的是中文,那么在ActionForm接收后会是乱码

解决方案有2个:

1.在Action类中解决,这个我试过,不可行

2.在ActionForm中解决,这个我试过,可行,而且很方便

在ActionForm中的reset方法中加入如下代码即可,可输出英文或中文

1 public void reset(ActionMapping
mapping, HttpServletRequest request) {
2         try {
3             request.setCharacterEncoding("GBK");
4         }
catch (Exception e) { 
5             // TODO: handle exception
6         }
7     }

那么在Action就可以输出中文的属性了

1 public ActionForward execute(ActionMapping mapping, ActionForm form,
2             HttpServletRequest request, HttpServletResponse response) {
3           
4         PersonalForm personalForm = (PersonalForm) form;// TODO Auto-generated method stub
5         System.out.println(personalForm.getUsername());
6         System.out.println(personalForm.getPassword());
7         return mapping.findForward("step2");
8     }

 

抱歉!评论已关闭.