1、第一个Servlet
/**
* @author CSDN_LQR
* @TODO 重定向
*/
public class ServletDemo6 extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
System.out.println("A:我要钱");
System.out.println("B:我没有,跟C拿");
// response.setStatus(302);
// response.setHeader("location", "demo7");
//这一句相当于上述两句
response.sendRedirect("demo7");
System.out.println("A:好,我就去");
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request, response);
}
}
/**
* @author CSDN_LQR
* @TODO 测试重定向
*/
public class ServletDemo7 extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
System.out.println("C:我有的是钱,100万拿去,随便花");
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request, response);
}
}
注意:打印顺序如下:
A:我要钱
B:我没有,跟C拿
A:好,我就去
C:我有的是钱,100万拿去,随便花
“`
可见,重定向并不是立刻跳转,而是先执行整个Servlet请求后,浏览器再根据响应头再进行跳转动作。