您的位置:首页 > 运维架构 > Tomcat

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

2016-06-15 11:12 429 查看
最近在学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编码再转发,问题解决了!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  tomcat 乱码 servlet