重定向和转发的区别与使用

本文详细探讨了Java Web中转发和重定向的区别与使用。转发是服务器内部操作,URL不变,同一请求响应,适用于内部页面跳转;重定向是客户端行为,URL改变,涉及两个请求响应,常用于跨域或登录状态管理。在性能和效率上,转发优于重定向。
摘要由CSDN通过智能技术生成
  • 转发:request.getRequestDispatcher(url).forward(request,response);
  • 重定向:response.sendRedirect(url);

  • 作用 :不管是重定向还是转发 都是实现了页面跳转到servlet或者jsp去处理相关的请求

  • 原理

    • 转发: 客户端(浏览器)首先发送一个请求到服务器端,服务器端发现匹配的servlet并指定它去执行,当这个servlet执行完之后,它要调用getRequestDispacther()方法,把请求转发给指定的servletjsp,整个流程都是在服务器端完成的,而且是在同一个请求里面完成的,因此servlet和jsp共享的是同一个request,在servlet里面放的所有东西,在jsp中都能取出来,因此,jsp能把结果getAttribute()出来,getAttribute()出来后执行完把结果返回给客户端。整个过程是一个请求,一个响应。

    • 重定向: 客户端发送一个请求到服务器,服务器匹配servletservlet处理完之后调用了

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值