Servlet学习笔记四—转发和重定向

一.请求转发

1.使用

request.getRequestDispatcher("要转发的地址").forward(request,reponse);

2.特点:

  • 一次请求
  • 地址栏信息不改变
  • 服务器内部跳转

3.注意:请求转发后直接return结束即可


4.Request 对象作用域


(1)问题:使用请求转发后,不同的Servlet 之间怎么进行数据的共享呢?或者说数据怎么从一个servlet 流转给另外一个Servlet 呢?
(2)解决:使用request 对象的作用域
(3)使用:

request.setAttribute(object name,Object value);
//获取request作用域数据
request.getAttribute(Object obj)

(4)作用:解决了一次请求内的不同Servlet 的数据(请求数据+其他数据)共享问题。
(5)作用域:基于请求转发,一次请求中的所有Servlet 共享。
(6)注意:
使用Request 对象进行数据流转,数据只在一次请求内有效。
(7)特点:
    服务器创建
    每次请求都会创建
    生命周期一次请求


二.重定向

1.使用:

response.sendRedirect("路径");

本地路径为:uri
网络路径为:定向资源的URL 信息


2.特点:

  • 两次请求,两次request对象
  • 浏览器地址栏信息改变
  • 避免表单重复提交
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值