转发与重定向

``` java
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
// 设置编码
req.setCharacterEncoding("utf-8");
resp.setCharacterEncoding("utf-8");
/*下面2种方式二选一*/
resp.sendRedirect("/javaweb/register.jsp");


this.getServletContext().getRequestDispatcher("/register.jsp").forward(req,resp);
req.getRequestDispatcher("/register.jsp").forward(req,resp);
}


protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
doGet(req, resp);
}
```

request.getRequestDispatcher()是请求转发,前后页面共享一个request ;

response.sendRedirect()是重新定向,前后页面不是一个request。

原文地址:https://www.cnblogs.com/yinianbaozi/p/13644635.html