spring 重定向以及转发 乱码问题解决

1.spring 转发

request.setAttribute("id", id);
request.setAttribute("name",name);
request.getRequestDispatcher("/controller/login").forward(request, response);

接收的方法可以通过request.getParameter("name");获得数据

2.重定向

msg = URLEncoder.encode(msg, "UTF-8");
response.sendRedirect("/controller/result?msg="+msg);

重定向传递参数没法使用request.setAttribute("name",name);这种传递参数。只能加载url上;

如果要传递中文,必须使用URLEncoder.encode(),同时接收方要使用msg = new String(msg.getBytes("ISO-8859-1"),"UTF-8");

才不会出现乱码;

也可以使用一下方式转发和重定向:

return "redirect:/ toList "; 

return "forward:/index.action";

posted @ 2015-08-25 14:36  耗子搞IT  阅读(334)  评论(0编辑  收藏  举报