资源跳转--response重定向和request转发
浏览器向服务器发送请求,ATestServlet
接收请求后,使用重定向/转发两种方式向BTestServlet
进行资源跳转
ATestServlet.java
@WebServlet(name = "ATestServlet", urlPatterns = "/chap3red_for_a")
public class ATestServlet extends HttpServlet {protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {// 设置request范围内的共享变量request.setAttribute("user", "admin");// 重定向至 BTestServletresponse.sendRedirect("/webpro/chap3red_for_b");// 转发至 BTestServletrequest.getRequestDispatcher("/chap3red_for_b").forward(request, response);}
}
BTestServlet.java
@WebServlet(name = "BTestServlet", urlPatterns = "/chap3red_for_b")
public class BTestServlet extends HttpServlet {protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {Object obj = request.getAttribute("user");System.out.println("user = " + obj);}
}
代码的运行流程图
response重定向
request转发
理解重定向与转发
重定向:张三找李四借钱,李四没钱,所以让张三找王五借钱,张三从王五那借到了钱。张三很感激王五
转发:张三找李四借钱,李四没钱,李四就找王五借钱,并把借来的钱又借给了张三。张三很感激李四
张三相当于浏览器的请求,而李四、王五相当于处理请求的web资源
重定向与转发的对比
web资源跳转的两种方法 | 转发 | 重定向 |
---|---|---|
代码 |
request .getRequestDispatcher(“url-patterns”).forward(request, response)
|
respond .sendRedirect(‘web资源相对于web 的路径’)
|
request对象触发 | response对象触发 | |
跳转范围 | 项目内资源跳转 | 跨项目资源跳转 |
数据是否丢失 | 不丢失 | 丢失 |
何时使用 | 项目内资源跳转;web资源间传递request范围内的数据 | 跨项目资源跳转;页面刷新问题 |
参考内容:
【动力节点】Servlet__老杜
资源跳转--response重定向和request转发相关推荐
- 页面的跳转——请求重定向和请求转发
目录 一.重定向(Redirect) 二.转发(Forward) 三.重定向和请求转发的区别 相同点 不同点 一.重定向(Redirect) 请求重定向是客户端行为.是指当浏览器请求一个URL时,服务 ...
- JSP中页面跳转response.sendRedirect()和request.getRequestDispatcher()的区别
Java Web开发中,采用MVC模式的时候,在控制器完成模型的调用之后会选择界面对用户响应,用常有2种方式 1,通过response对象的sendRedirect方法重定向: response.se ...
- springboot 直接转发调用_springboot-过滤器的页面跳转【重定向与请求转发】-异常报错...
springboot中,增加过滤器后,页面重定向跳转与请求转发跳转,都出现报错. 求大佬帮忙解答,谢谢! 一.页面跳转代码: 1.重定向代码: response.sendRedirect(" ...
- 我来说清楚 SpringBoot Controller层默认跳转、重定向(redirect)、转发(forword)之间的区别
默认跳转 SpringBoot底层会为返回的字符串拼接前缀和后缀,使其成为完整的资源路径. 然后按照路径查找对应资源,返回个浏览器,浏览器解析并展示. 重定向 在使用重定向时,返回的字符串指的是一个请 ...
- 请求转发和重定向的区别_WEB之重定向和请求转发的区别
一次重定向的过程 我的代码里面已经写好了,redirectAndFoward.jsp页面上有一个表单,表单重定向到redirectAndFowardTarget.jsp,那么这一次的重定向过程为: 1 ...
- Web——Request转发和Response重定向
• Request请求转发 ○ 请求转发§ 请求转发(forward):一种在服务器内部的资源跳转方式§ ○ 实现方式:§ request.getRequestDispatcher("资源B ...
- request转发,response重定向,异步请求json数据输出到页面
request转发: //转发到index.jsp页面request.getRequestDispatcher("index.jsp").forward(request, resp ...
- 大数据WEB阶段 (十)Response、ServletConfig、ServletContext、资源跳转三种方式
Response.ServletConfig.ServletContext.资源跳转三种方式 - (一)Response 一.Response概述 在doGet和doPost方法的参数中,HttpSe ...
- 转发和重定向和request域对象
利用请求域传递对象(request域对象) 重定向和转发的区别(转发)(*****)* 域对象ServletContext:服务器一启动,为每个web应用创建一个ServletContext对象,所有 ...
最新文章
- Mysql组复制故障恢复测试
- VS2005控制台程序修改nb0文件
- Android Studio 使用笔记:查看类结构和继承关系
- html表格的表头怎么合并单元格,使用tableGrob合并表头单元格
- iOS ----------怎么修改xcode默认打开方式
- 【大盛】全网首发HTC One/M7 最新本地化TrickDroid9.0/固件升级/永久root/高级,快速设置/稳定,流畅经典ROM...
- 快速开发系统之前台页面 ---- NO1----登录页面
- 利用scrapy爬取文件后并基于管道化的持久化存储
- wpf开源ui引用步骤_完善开源产品策略的6个步骤
- 3-6 字符和字符串处理
- SQL2008安装教程
- Warning: Stopping rpcbind.service, but it can still be activated by:rpcbind.socket
- 《计算机导论》学后感想,学习《计算机导论》后的感想.doc
- 如何找出当前活动桌面背景图像的位置/路径(Ubuntu 18.04,GNOME)?
- 2022-4-7 基于单片机的篮球记分器(LCD1602)(公众号:风吹摇铃 奔赴星海)
- 你也还在找程序员外包平台吗?有这几个就足够了!
- 成都理工大学计算机考研经历,09计算机考研的小小体会~
- 诺禾- tcp 网络效劳框架
- android自动回复退订,[原创]某聊天app自动回复
- M5202高品质线性充电芯片可替TP4056
热门文章
- lwip之数据收发流程_2
- PAT甲级1112 Stucked Keyboard:[C++题解]卡住的键盘、双指针、去重
- C++中的Lambda表达式详解
- distinct作用于后面所有的列吗_InnoDB索引允许NULL对性能有影响吗
- python中系列的含义_一篇文章让你彻底搞清楚Python中self的含义
- jpa遇到mysql表名大写怎么办_解决(springboot项目)mysql表名大写,造成jpa Table doesn't exist问题...
- python视窗版_Python GUI tkinter窗口视窗学习3
- python matplotlib animation制作世界人口变动动画
- r指引到文件夹_R语言中进行文件夹及文件夹内文件操作范例
- python绘制折线图中文图例不显示_python使用matplotlib绘图时图例显示问题的解决...