servlet 请求转发和重定向

重定向 写法

旧写法

	response.setStatus(302);
			response.setHeader("Location", "login_success.html");  
			//login_success.html 是我们新的页面			

新型写法

response.sendRedirect("login_success.html");//返回的是全路径

服务器给了我们一段location 地址 ,浏览器得到后再次重新访问服务端新给的页面

请求转发
request.requestgetRequestDispatcher("login_success.html").forward(request, response);

服务器帮我们跳转到了另外一个界面(都是由服务端做的)

二者的不同
重定向请求转发
转化后的地址显示不同显示最后的那个资源的路径地址显示的是servlet请求的地址
请求次数不同请求最少两次,服务器在第一次请求后返回的是302 以及一个地址,浏览器根据这个地址,执行第二次访问请求只有一次,服务器帮客户端执行后续工作
-效率--效率较低 ,跳转了两次--效率较高,跳转了一次-
能否任意跳转可以任意跳转,不是自己的工程也可以跳自能跳转到自己的项目下的资源
-其他--后续的请求,没法使用上一次的request存储的数据,或者 没法使用上一次的request对象,因为这是两次不同的请求--可以使用上一次的request对象-
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值