Servlet实现请求包含和请求转发

Servlet的请求转发和包含是两种处理请求的方式。请求转发将请求转交给其他Servlet或资源,由后者响应;而请求包含则允许多个Servlet协同处理同一个请求,常用于JSP页面的组合。两者都共享request和response对象,但转发后原Servlet不再参与响应,包含则所有Servlet都能响应。转发常用于Servlet间,包含常用于JSP页面展示。
摘要由CSDN通过智能技术生成
Servlet转发原理如下:

在这里插入图片描述
请求转发就是Servlet将请求转送给其他的Servlet或服务器资源,实现如下:

request.getRequestDispatcher("转发路径").forward(request, response);
Servlet请求包含原理如下:

在这里插入图片描述
包含指多个Servlet共同处理一个请求,实现如下:

request.getRequestDispatcher("转发路径").include(request, response);

RequestDispatcher对象从客户端获取请求request,并把它们传递给服务器上的其他Web资源。

异同

1、同
都是使用多个Servlet一起处理请求,并且在请求之间公用一个request和response(include(request, response);forward(request, response);

2、异
请求转发,假设A转发给B,那么A将不能向客户端发起响应,因为这一动作是由B来完成的,大多应用在Servlet中;
请求包含,多页面协同响应,大多应用在JSP页面中,完成多页面的合并。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值