get方式表单提交 传递参数乱码问题完美解决方案

表单提交 使用get方法,jsp完美解决乱码问题:

有一次项目需要使用get方法提交表单,中文乱码苦恼了我很久,我查了很多资料,大部分人都是建议修改Tomcat中的URIEncoding,但是这样会导致所有项目都改变编码,不同项目使用不同编码,这样又会引来更多问题。

下面有一种超级简单的解决方法:

 

JSP页面中文参数传递实现之代码MyJsp1.jsp:

﹤%@ page language="java" import="java.util.*" pageEncoding="gb2312"%﹥
﹤form action="MyJsp2.jsp" method="get"﹥
    ﹤input type=hidden name=act value=动作 /﹥
    ﹤input type=submit value=ok﹥
﹤/form﹥ 

 

 

 JSP页面中文参数传递实现之代码MyJsp2.jsp:

 

 

﹤%@ page language="java" import="java.util.*" pageEncoding="gb2312"%﹥
﹤% 
    String tempVal = request.getParameter("act"); 
    out.println(new String(tempVal.getBytes("ISO-8859-1"), "gb2312")); 
%﹥

 

  

使用ISO-8859-1的原因是Tomcat默认URIEncoding是这种编码,这样就很简单的解决了乱码问题了。

你可能感兴趣的:(java,tomcat,Web,jsp,乱码)