【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.请求转发是属于服务器端行为,重定向是属于客户端行为

  • 8
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值