转发与重定向的区别

时间:2023-01-09 13:13:19

一,转发实现

request.getRequestDispatcher(" *.jsp ").forward(request,response);

二,重定向

response.sendRedirect(request.getContextPath()+" *.jsp ");

区别:

1.转发在服务端完成,重定向在客户端完成

2.效率,转发理论上相对较快(重定向要返回客户端)

3.重定向返回客户端,所以重定向在客户端浏览器的URL改变,转发的不变

4.转发后不会执行目标代码,而重定向会执行目标代码

5.转发必须由一台服务器完成,重定向可以由不同的服务器完成处理、


结论:如果该页面是用来查询操作,选择转发

如果是涉及对数据的增删改操作,选择重定向,防止二次操作错误