先说明作者定义LoginServlet地址映射为"/servlet/loginServlet"
login.jsp页面位于WebContent文件夹下
请求重定向:
浏览器请求行为
特点:
1。以重新定向访问其他Web应用下的资源
2.浏览器发出了2次请求,得到了2次响应
3.址栏地址会变,跳转到要求指定的Servle或Web页面
参数设置:
相对路径:response.sendRedirect("../login.jsp");
由于请求重定向是从当前servlet所在目录请求重定向,而login.jsp页面在WebContent文件夹下,所以得从servlet文件夹的上一级目录请求。
绝对路径:response.sendRedirect("/项目名/login.jsp");
表示从tomcat根目录请求重定向,第一个“/”表示tomcat根目录,即: http://127.0.0.1:8080/,所以浏览器获得的请求路径参数就是http://127.0.0.1:8080/项目名/login.jsp。
请求转发:
服务器内部请求行为
特点:
1.转发只能发生在当前Web应用下
2.浏览器发出了1次请求,得到了1次响应
3.地址栏地址不会发生变化。
参数设置:
request.getRequestDispatcher("/login.jsp").forward(request, response);
注意:请求转发和地址重定向的参数设置略有不同,其中地址重定向本质上需要一个完整的浏览器请求路径,而请求转发是从当应用的访问。