Tomcat中关于重定向产生的乱码问题

来源:互联网 发布:2012年cba总决赛数据 编辑:程序博客网 时间:2024/05/18 03:35

最近在学servlet,正学到乱码问题的解决。当我在html中用get提交中文到encoding servlet中,接着在encoding中重定向到Welcome servlet中提取参数出现乱码!

html            <form action="/Servlet1/encoding" method="get">
                          u:<input type="text" name="username"/>
                         <input type="submit"/>
                   </form><br/>

encoding.java(servelt)

                   String username=request.getParameter("username");

                   response.sendRedirect("/Servlet1/Welcome?username="+username);

Welcome.java (servlet)

                  String username=request.getParameter("username");
                  System.out.println(username);           //在这出现乱码

无论用什么都无法解决,new String(request.getParameter("username").getBytes("iso-8859-1"),"utf-8");也没有用。

最终在encoding.java 中加了一句username=new String(username.getBytes("utf-8"),"iso-8859-1");居然解决了。

由此可见,在tomcat中地址栏的地址编码应该是iso8859-1,当在地址栏中加入其它编码的字段,会出现乱码,故而将username转换为iso8859-1编码再转发,问题解决了!


2 0
原创粉丝点击