JSP中的重定向和转发的区别[通俗易懂]

JSP中的重定向和转发的区别[通俗易懂]转发:一个web组件将未完成的处理转换交给另一个web组件继续做(web组件指的是jsp或者Servlet)Servlet获取数据以后转发给js

转发:一个web组件将未完成的处理转换交给另一个web组件继续做(web组件指的是jsp或者Servlet)

Servlet获取数据以后转发给jsp,由jsp将数据以合理的方式展现出来。

当客户端发送请求时由Servlet做业务处理调用java类然后转发给jsp,由jsp渲染响应页面。

JSP中的重定向和转发的区别[通俗易懂]

当客户端发请求到后端(request),后端作出相应(response),如果后端的处理逻辑(在没有登陆的情况下就想看购物车就得重定向到登陆页面)为重定向,发送302状态码和location消息头给前端,然后浏览器就会用该链接重新访问服务器 这时候的request是新的,服务器的response也是新的(request和response只存活于一次请求和一次响应之间)。

JSP中的重定向和转发的区别[通俗易懂]

如何转发?

1.将数据绑定到request对象上。

request.setAttribute(String name,Object obj); //map.put(name,obj)

2.获得转发器

RequestDispatcher rd=request.getRequestDispatcher(String uri); //uri是转发的地址,通常是一个jsp。

3.转发

rd.forward(request,response);

JSP中的重定向和转发的区别[通俗易懂]

JSP中的重定向和转发的区别[通俗易懂]

转发的特点:

a.转发之后,浏览器地址不变。

b.转发的地址有限,要求属于同一个web应用

转发与重定向的区别

a.能否共享request?

转发可以,而重定向不行(上面由说明 当容器收到请求,会立即创建request和response,当响应发送完毕后,容器会立即销毁)

这两个对象。转发是一次请求而重定向是两次请求。

b.浏览器地址栏的变化?

转发没有变化,重定想会发生变化。

c.地址有无限制?

转发有限制 (要求属于同一个web应用),重定向没有任何限制。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
转载请注明出处: https://daima100.com/11852.html

(0)

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注