get方式表单提交 传递参数乱码有关问题完美解决方案
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是这种编码,这样就很简单的解决了乱码问题了。