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";