1. 转发:

a) 什么是转发?
一个web组件将未完成的任务交给另一个web组件继续做.
通常是一个servlet将数据获取之后转交给jsp进行展现.
注:web组件值得是servlet或者jsp

b) 如何转发?

  1. 将数据绑定到request对象上.
    request.setatteribute(string name,obj)
    注:name绑定名 obj:绑定值
     obj request.getattr…(string name);//依据绑定名获取绑定值.
  2. 获取转发器
    requestdispatatcher rd = request.getrequestdispatcher(string url);
    注:转发的目的地,比如一个jsp
  3. 转发
    rd.forward(request,response)
    注:转发的本质是一个web组件通知容器调用另外一个web组件,(即调用service方法,所以需要传递request,response)

c) 特点:

  1. 转发的目的地有限制(要求同一个web应用中的某个地址)
  2. 转发之后,浏览器地址不变.

d) 比较重定向和转发:

  1. 转发所涉及的各个web组件可以共享request和response.重定向不可以.
    注:request和response的生存时间并不长(当服务器收到请求后会立即创建这两个对象,当响应发送完毕,会立即销毁这两个对象)即这两个对象的生存时间为一次请求与响应期间存在.
  2. 转发之后浏览器地址栏地址不变(要求同一个web应用中的某个地址),重定向没有任何限制且地址会改变.
  3. 路径问题:

a) 什么是路径问题?
链接,表单提交,重定向和转发都需要填写一个路径,比如
<from action=”add.do”>如何填写这个路径/

b) 相对路径

  1. 什么是相对路径?
    不以”/”开头的路径.

c) 绝对路径

    1. 什么是相对路径?
      以”/”开头的路径.
    2. 如何写绝对路径?
      链接,表单提交,重定向冲应用名开始写,转发从应用名开始写.
      z注:不要直接将应用名写在路径里面,应该使用request.getcontextpath()获取应用名.

最新文章

  1. 解决Windows 8.1中所有的应用(Modern App)无法打开(闪退)的问题
  2. 苹果 OS X 系统U盘重装-抹盘重装、系统盘制作
  3. The Engine Document of JustWeEngine
  4. POST 500 Internal Server Error
  5. QT 对话框二
  6. 10---Net基础加强
  7. could not open extension control file &quot;/usr/share/postgresql/9.1/extension/plpythonu.control&quot;: No such file or directory
  8. ASP.NET分页
  9. hdu 1024
  10. 修改ecshop模板体会
  11. struct 和 class 不同点
  12. shell 快速入门
  13. 自己编写jQuery动态引入js文件插件 (jquery.import.dynamic.script)
  14. Code Kata:大整数比较大小&amp;大整数四则运算---加减法 javascript实现
  15. Django之路由分发系统
  16. 深刻理解iosBlock
  17. Leetcode_122_Best Time to Buy and Sell Stock II
  18. 安装VC6.0安装步骤及心得体会
  19. day09-python基础
  20. 浅谈移动端设备标识码:DeviceID、IMEI、IDFA、UDID和UUID

热门文章

  1. 「ARC 139F」Many Xor Optimization Problems【线性做法,踩标】
  2. 自动装箱与自动拆箱——JavaSE基础
  3. 深入探究MinimalApi是如何在Swagger中展示的
  4. 如何使用Superset可无缝对接MRS进行自助分析
  5. 一文get到SOLID原则的重点
  6. 记安装AWVS14过程踩的坑
  7. python logging模块使用方法
  8. 高级web网页人脸识别tracking.js
  9. 为什么不建议使用自定义Object作为HashMap的key?
  10. 多校联训 DS 专题