JSP重定向方法——内置对象response 对比 动作指令forward
重定向就是跳转到另一个页面,JSP中重定向的方法主要有以下两种:
response对象进行重定向:response.sendRedirect(目标页面路径);
JSP动作指令:<jsp:forward page = ""></jsp:forward>
使用这两种方法跳转具有很大的不同,可以从以下几个方面来区别:
1、从浏览器的地址显示上来看
forward方法属于服务器端去请求资源,服务器直接访问目标地址,并对该目标地址的响应内容进行读取,再把读取到的内容发给浏览器,因此用户端浏览器的地址不变。
redirect是告诉客户端,使浏览器知道去请求哪一个地址,相当于客户端重新请求一遍,所以地址显示栏会变。
2、从数据共享来看
forward转发的页以及转发到的目标页面能够共享request里面的数据。
redirect转发的页以及转发到的目标页面不能共享request里面的数据。
3、从功能来看
redirect 能够重定向到当前应用程序的其他资源,还能够重定向到同一个站点上的其他应用程序中的资源,甚至是使用绝对URL重定向到其他站点的资源。
forward 方法只能在同一个Web应用程序内的资源之间转发请求,可以理解为服务器内部的一种操作。
4、从效率来看
forward 的效率较高,因为跳转仅发生在服务器端。
redirect 的效率相对较低,因为相当于又进行了一次请求。
版权声明:本文为weixin_45080371原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。