欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

java-servlet-转发AND路径(详解)

程序员文章站 2024-04-01 23:19:52
1.转发: a) 什么是转发? 一个web组件将未完成的任务交给另一个web组件继续做. 通常是一个servlet将数据获取之后转交给jsp进行展现. 注:web组...

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()获取应用名.

以上这篇java-servlet-转发and路径(详解)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。