JSP页面跳转方法总结


实现JSP页面跳转,有如下几种方式: 1 使用href超链接标记    (客户端 跳转) 2用javascript     (客户端 跳转) 3提交表单 
 
 
  (客户端 跳转)  使用response对象 
 

(客户端 跳转)

使用forward动作标记    

(服务器端 跳转)
使用RequestDispatcher类    (服务器端 跳转)
 
1、使用response对象  (1) 调用sendRedirect()方法,重定向。
 
注意以下两点: 
sendRedirect()可以带参数传递
例如:sendRedirect(“/main.jsp?userName=zhangsan”);
  sendRedirect()之后,应该紧跟一句return
sendRedirect()是通过浏览器来做转向的,所以只有在页面处理完成后,才会有实际的动作。既然你已经要做转向了,那么后面的输出还有什么意义呢?而且有可能会因为后面的输出导致转向失败。
   (2) 调用setHeader()方法,等待若干秒后,自动重定向到另一个页面。   可以通过response对象,调用setHeader(“Refresh”, “时间; 目标页面”)方法,实现等待若干秒后,自动重定向到另一个页面。 
response.setHeader("Refresh", "10; url=login.jsp");
上述代码表示等待10秒后,将自动重定向到login.jsp这个页面。
 
2、使用forward动作标记

response重定向和forward跳转的区别 (1) response重定向 

执行完页面的所有代码,再跳转到目标页面。 

跳转到目标页面后,浏览器地址栏中的URL会改变。 在浏览器端重定向。

可以跳转到其它服务器上的页面,
例如:response.sendRedirect(“http://www.baidu.com”) 
(2) forward跳转
 直接跳转到目标页面,其后的代码不再执行。

 跳转到目标页面后,浏览器地址栏中的URL不会改变。

在服务器端重定向。

 无法跳转到其它服务器上的页面。  
3、使用RequestDispatcher类
基本用法:
RequestDispatcher rd = request.getRequestDispatcher("目标页面"); rd.forward(request,response); 
使用RequestDispatcher实现页面跳转,和使用forward动作标记实现页面跳转,其基本原理是一样的。
response重定向和RequestDispatcher跳转的区别 (1) response重定向
执行完页面的所有代码,再跳转到目标页面。
跳转到目标页面后,浏览器地址栏中的URL会改变。 在浏览器端重定向。
可以跳转到其它服务器上的页面,
例如:response.sendRedirect(“http://www.baidu.com”) 
(2) RequestDispatcher跳转

 执行完所有代码,再跳转到目标页面。

 跳转到目标页面后,浏览器地址栏中的URL不会改变。  在服务器端重定向。
 无法跳转到其它服务器上的页面。  
forward跳转和RequestDispatcher跳转的区别 (1) forward跳转

forward动作标记之后的代码,不再执行,立即跳转到目标页面。

指定目标页面时,既可以使用绝对路径,也可以使用相对路径。

(2) RequestDispatcher跳转
执行完所有代码,包括RequestDispatcher之后的所有代码,再跳转到目
标页面。
 指定目标页面时,只能使用绝对路径。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值