ActionForm中文乱码问题解决方案

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

解决方案有2个:

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

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

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

public void reset(ActionMapping mapping, HttpServletRequest request) {
		try {
			request.setCharacterEncoding("GBK");
		} catch (Exception e) {	
			// TODO: handle exception
		}
	}
那么在Action就可以输出中文的属性了
public ActionForward execute(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response) {
		
		PersonalForm personalForm = (PersonalForm) form;// TODO Auto-generated method stub
		System.out.println(personalForm.getUsername());
		System.out.println(personalForm.getPassword());
		return mapping.findForward("step2");
	}
posted @ 2011-01-09 16:51  李只蚊  阅读(1599)  评论(0编辑  收藏  举报