【Web后端】jsp基础知识_请求转发和重定向

1.jsp基础知识

1.1简介

  • java server page,运行在服务器端的页面
  • java代码+html代码
  • java代码全部都放在<%%>中间

1.2jsp表达式

  • 作用:将动态信息显示在页面上,以字符串方式,返回给浏览器端
  • 语法:<%=变量或表达式%>
  • 注意:不能使用分号放在后面

2.请求转发和重定向

2.1 请求转发

  • 一个web资源收到客户端浏览器请求后,通知服务器去调用另外一个web资源来进行处理,服务器端行为

2.1.1 工作原理

2.1.2 RequestDispatcher接口

  • HttpServletRequest调用getRequestDispatcher(String path):可以是绝对路径,也可以是相对路径
  • ServletContext调用getRequestDispatcher(String):是绝对路径封装由路径所标识的web资源
  • forward(req,resp):将请求转发给另一个web资源
  • include(req,resp):将其他web资源作为响应内容包含进来

2.1.3 特性

  • 请求转发不支持跨域访问,只能跳转到当前应用中的资源
  • 请求转发,浏览器上的URL地址不改变,浏览器不知道服务器内部发生了请求转发,也不知道转发的次数
  • 参与请求转发的web资源之间,共享同一个request和response对象
  • 可以在请求范围内,使用setAttribute(名,值) ,getAttribute(名),来传递数据

2.2 重定向

  • 当前浏览向服务器发送请求时,通知浏览器重新定向到另一个web资源,客户端行为
  • 响应码:200表示成功,302表求重定向,404 资源不可访问,500 服务器内部错误(程序错误)

2.2.1 工作原理

2.2.2 重定向特性

  • 浏览器地址栏会发生变化,变成第二次请求的地址
  • 是两次request和response,不能在请求范围内传数据
  • 可以跨域,可以重定向任何网址

2.3 区别

  • 1.请求转发是一次请求,重定向是两次请求
  • 2.请求转发浏览器地址不变,重定向浏览器地址改变
  • 3.请求转发由于是一次请求,所以效率更高
  • 4.请求转发可以在请求范围内传递数据,重定向不可以在请求范围内传递数据
  • 5.请求转发不支持跨域,重定向支持跨域
  • 6.请求转发是属于服务器端行为,重定向是属于客户端行为

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/10433.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

使用xtuner微调InternLM-Chat-7B

1. 安装xtuner #激活环境 source activate test_llm # 安装xtuner pip install xtuner#还有一些依赖项需要安装 future>0.6.0 cython lxml>3.1.0 cssselect mmengine 2. 创建一个ft-oasst1 数据集的工作路径&#xff0c;进入 mkdir ft-oasst1 cd ft-oasst1 3.XTune…

批量生成大量附件(如:excel,txt,pdf)压缩包等文件时前端超时,采用mq+redis异步处理和多线程优化提升性能

一.首先分析一下场景&#xff1a;项目中我需要从财务模块去取单证模块的数据来生成一个个excel文件 在单证那个一个提单号就是一个excel文件&#xff0c;我们这边一个财务发票可能会查出几千个提单&#xff0c;也就是会生成几百个excel&#xff0c;然后压缩为一个压缩包&#x…

【工具】2024年最新贵州省专业技术人员继续教育自动倍速刷课时脚本 - 篡改猴脚本

&#x1f525;&#x1f525;2024年最新贵州省专业技术人员继续教育自动倍速刷课时脚本|静音播放|自动跳过已完成的视频|解除防挂机提示|稳定极高 篡改猴脚本库国内地址&#xff1a;https://greasyfork.org/zh-CN/scripts/494638 一、自动播放脚本 脚本如下&#xff0c;仅供…

Zotero 使用入门(笔记)

参考文献&#xff1a;Zotero入门完整教程-共27节-免费&#xff0c;李长太>&#xff0c; 仅供参考学习

即插即用篇 | YOLOv8 引入 Strip Pooling | 重新思考场景解析的空间池化

本改进已集成到 YOLOv8-Magic 框架。 空间池化已被证明在捕获像素级预测任务的长距离上下文信息方面非常有效,如场景解析。在本文中,我们超越了通常具有N N规则形状的常规空间池化,重新思考空间池化的构成,引入了一种新的池化策略,称为条带池化,它考虑了一个长而窄的核,…

Redis不同数据类型value存储

一、Strings redis中String的底层没有用c的char来实现&#xff0c;而是使用SDS数据结构( char buf[])。 缺点:浪费空间 优势: 1.c字符串不记录自身的长度&#xff0c;所以获取一个字符串长度的复杂度是O(N),但是SDS记录分配的长度alloc,已使用长度len&#xff0c;获取长度的…

【docker run --name mysql8 -d -p 3306:3306】

创建一个目录&#xff0c;名字自己取&#xff0c;比如&#xff1a; /mydata2 cd / mkdir mydata2 拉取mysql8.0.16 镜像 docker pull mysql:8.0.16 使用docker run 命令&#xff0c;创建&#xff0c;运行容器。 docker run --name mysql8 -d -p 3306:3306 -v /docker-data/my…

Mysql修改表结构、添加索引会锁表吗?

前言 在MySQL5.7和MySQL8.0中&#xff0c;表结构修改和索引添加通常不会锁定整个表。但是&#xff0c;在某些情况下&#xff0c;MySQL可能需要锁定整个表。 MySQL5.7 在MySQL5.7中&#xff0c;对于表结构变更、索引添加&#xff0c;MySQL使用了一种称为“In-Place Alter”的…

品味Fendi club:精酿啤酒的精致与与众不同

啤酒&#xff0c;作为世界三大饮料之一&#xff0c;其口感和品质的差异能给人们带来截然不同的体验。在众多啤酒中&#xff0c;Fendi club以其与众不同的精酿啤酒风格&#xff0c;吸引了无数热爱啤酒的人。 Fendi club啤酒的精致与与众不同&#xff0c;首先体现在其酿造工艺上。…

Nature子刊:常见口服药的副作用原来这么大!

哥伦比亚大学Harris H. Wang团队 在《Nature Microbiology》期刊上(IF28.3)发表了关于409种细菌-药物对揭示肠道微生物群扰动的驱动因素的文章&#xff0c;该研究通过对转录组学测定结果进行生信分析&#xff0c;强调了大规模转录组学在肠道微生物-外源化学物相互作用的功能发…

AI应用案例:供应链平台健康状况和发展趋势分析

某供应链平台在2019年就遍布了中国320个城市&#xff0c;为2600多家企业提供超40万个品类的供应链服务。它是通过直供城市终端销售门店&#xff0c;甚至是消费者&#xff0c;最大限度保证品牌和终端的销售利益。 但是平台交易市值较大、涉及的行业较多&#xff0c;而且打破了传…

赛多利斯sartorius MA35维修红外线干燥器秤水份测定仪精密称量仪深圳捷达工控维修

MA35是一款采用热重分析法的基本款水分分析仪&#xff0c;它可对液体、糊状和固体样品的水分进行快速、可靠的分析。 紧凑型坚固耐用的设计&#xff0c;结合极高的精确度和测量准确度&#xff0c;使得MA35成为统一测量任务的理想设备。赛多利斯在水分分析领域几十年的经验可保…

6.数据库

1.实体用矩形表示&#xff0c;属性用椭圆表示&#xff0c;联系用菱形表示 2.层次模型用数表示 3.网状模型用图结构表示 4.关系模型用二维表格结构来表示 5.概念模式基本表 外模式视图 内模式存储 6.模式/内模式映像 外模式/模式映像 7.数据的物理独立性 跟内模式关系 逻辑是视图…

vim 查找字符串的命令

vim查找字符串的命令 在 Vim 中&#xff0c;你可以使用以下命令来查找一个字符串&#xff1a; 普通模式下&#xff0c;按 / 键后输入你要查找的字符串&#xff0c;然后按 Enter 键进行查找。 例如&#xff0c;要查找 "text"&#xff0c;你可以按下 /text 后按 Ent…

邦注科技给您解答 什么是注塑机模具保护器

模具监视器&#xff0c;这位制造业的守护神&#xff0c;时刻注视着模具的每一个细微变化。它的工作原理如同一位细心的侦探&#xff0c;利用传感器、数据采集系统和监控软件组成的精良装备&#xff0c;探寻模具的秘密。 传感器如同模具的耳目&#xff0c;敏锐地捕捉着模具的温度…

Github图片显示不出来?两步解决!

很多同学可能和我一样&#xff0c;在GitHub中找一些项目或者资料的时候&#xff1b;总是会看到一些图片显示不出来&#xff0c;或者数学公式乱码&#xff1a; 比如这样 还有这样 其实这个主要是因为DNS污染导致的&#xff0c;具体大家可以百度&#xff0c;这边不详细介绍。 解决…

LagentAgentLego智能体工具使用

1. lagent 参考文档 https://github.com/InternLM/Tutorial/blob/camp2/agent/lagent.md 使用 LMDeploy 部署 conda activate agent lmdeploy serve api_server /root/share/new_models/Shanghai_AI_Laboratory/internlm2-chat-7b \--server-name 127.0.0.1 \--model-name in…

JavaEE初阶-多线程4

文章目录 一、单例模式1.1 饿汉模式1.2 懒汉模式 二、阻塞队列1.1 生产者消费者模型1.1.1 现实生活举例1.1.2 生产者消费模型的两个优势1.1.2.1 解耦合1.1.2.2 削峰填谷 1.2 阻塞队列代码1.2.1 使用java标准库的阻塞队列实现生产者消费者模型1.2.2 实现自己的阻塞队列 一、单例…

30年赚1000亿美元--“量化之王”和他最传奇的基金“大奖章”的秘密

文艺复兴是华尔街最成功、最神秘的机构之一。从1988-2018年的30年里&#xff0c;文艺复兴仅向内部员工开放的旗舰基金“大奖章”累计创造了超过1000亿美元的收益&#xff0c;年均回报率高达39%。作为对比&#xff0c;同期“股神”巴菲特的年均回报率为20.5%。 而且&#xff0c;…

软件需求和设计评审

目录 引言 1. 软件评审的方法和技术 2. 产品需求评审&#xff1a;构建正确的产品 3. 设计评审&#xff1a;构建正确的产品 4. 软件评审的最佳实践 结语 引言 在软件开发的迷宫中&#xff0c;需求和设计评审是通往成功产品的关键门户。它们是确保软件质量和满足用户需求的…