servlet中的请求响应与重定向区别

时间:2022-06-13 23:57:46

一、概念

请求响应(转发):将客户端请求转发另一个servlet或者jsp页面------------------------getRequestDispatcher()方法

重定向: 返回一个连接给客户端,让浏览器重新发送请求,但重新发送的请求是另一个servlet---------------------------sendRedirect()方法;

二、用法

请求响应:request.getRequestDispatcher("jsp文件的路径").forword(req,resp);

重定向:response.sendRedirect("/day02_01/views/student.jsp");

三、区别

1、请求转发是一次请求,重定向是两次请求(地址栏可以查看)

2、请求转发地址栏不会发生改变,重定向地址栏会发生改变。

3、请求转发可以共享参数,重定向之后获取不了共享参数

4、请求转发不能跨域(不能访问其他服务器连接),重定向可以。

5、请求转发能转到WEB-INF目录下的文件req.getRequestDispatcher("/WEB-INF/views/student.jsp).forword(req,resp);而重定向不能

原因:WEB-INF不能被外部通过地址直接访问