Javaweb-RequstDispatcher转发

本文介绍了JavaWeb中RequestDispatcher接口的使用,包括其定义、方法以及如何获取RequestDispatcher。详细讨论了通过HttpServletRequest的forward()和include()方法进行转发,并通过实验展示了它们的区别。同时,文章还讲解了在Servlet之间共享属性的方法,如使用HttpServletRequest和ServletContext的setAttribute和getAttribute方法。
摘要由CSDN通过智能技术生成

一、RequestDispatcher接口信息

1.1、定义

一个可以将客户端的请求转发到当前服务器中其他资源(Servlet、JSP、HTML),让这些资源对请求进行响应

1.2、方法

方法一:使用forward()方法进行转发,只是用转发的那个Servlet、JSP、HTML进行响应。不能包括当前的Servlet或者是其他的Servlet的响应

forward(HttpServletRequest request,HttpServletRequest response)

方法二:使用include方法进行转发,可以包含当前的Servlet的输出流输出结果,和转发后的Servlet、JSP、HTML的响应结果

include(HttpServletRequest request,HttpServletRequest response)

二、获取RequestDispatcher方式

2.1使用HttpServletRequest获取
RequestDispatcher dispatcher = HttpServletRequest.getRequestDispatcher(资源路劲/文件名);
2.2使用ServletContext获取
RequestDispatcher dispatcher = ServletContext.getRequestDispatcher(资源路劲/文件名);

三、如何在Servlet之间共享属性

3.1使用HttpServletRequest的setAttribute和getAttribute方法
request.setAttribute("paramName",paramValue);
Object object = request.getAttribute("paramName",paramValue);
3.1使用ServletContext的setAttribute和getAttribute方法
servletContext.setAttribute("paramName",paramValue);
Object object = servletContext.getAttribute("paramName",paramValue);

4、实验

4.1由HttpServletRequest获取RequestDispatcher,通过include()方法进行转发

在浏览器中输入http://localhost:8088/request_dispatcher.html
request_dispatcher.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<form action="/request_dispatcher" method=
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值