关于struts提交乱码的解决

来源:互联网 发布:淘宝网店营销策略论文 编辑:程序博客网 时间:2024/05/21 08:02

     今天突然同事问到Struts提交乱码,从思路我首先说form提交的method要设置post,后来发现他用的是struts的html:form标签,这个标签默认就是post提交方式;再就想到jsp页面要设置page指令

<%@ page language="java" contentType="text/html; charset=UTF-8"%>
<%@ page language="java" pageEncoding="UTF-8"%>;还是不行,怎么办呢,难道非要写个filter(filter具体实现我就不写了),重写org.apache.struts.action.ActionServlet?!

重写其实很简单:

public class MyActionServlet extends ActionServlet {

  protected void process(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException {
   request.setCharacterEncoding("UTF-8");
   super.process(request, response);
  }
}

 

想这些对全局都有作用,是比较好的解决方法,当然也不排除个别的需要解决乱码问题,只需要在相关地方做如下转换

new String(form.getUserName().getBytes("iso-8859-1"),"UTF-8")

 

经典的老问题记载分享一下,希望对大家有帮助!

原创粉丝点击