实现JSP页面跳转,有如下几种方式:
n 使用href超链接标记 (客户端跳转)
n 使用JavaScript (客户端跳转)
n 提交表单 (客户端跳转)
n 使用response对象 (客户端跳转)
n 使用forward动作标记 (服务器端跳转)
n 使用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重定向
n 执行完页面的所有代码,再跳转到目标页面。
n 跳转到目标页面后,浏览器地址栏中的URL会改变。
n 在浏览器端重定向。
n 可以跳转到其它服务器上的页面,
例如:response.sendRedirect(“http://www.baidu.com”)
(2) forward跳转
n 直接跳转到目标页面,其后的代码不再执行。
n 跳转到目标页面后,浏览器地址栏中的URL不会改变。
n 在服务器端重定向。
n 无法跳转到其它服务器上的页面。
3、使用RequestDispatcher类
基本用法:
RequestDispatcher rd = request.getRequestDispatcher("目标页面"); rd.forward(request,response);
使用RequestDispatcher实现页面跳转,和使用forward动作标记实现页面跳转,其基本原理是一样的。
response重定向和RequestDispatcher跳转的区别
(1) response重定向
n 执行完页面的所有代码,再跳转到目标页面。
n 跳转到目标页面后,浏览器地址栏中的URL会改变。
n 在浏览器端重定向。
n 可以跳转到其它服务器上的页面,
例如:response.sendRedirect(“http://www.baidu.com”)
(2) RequestDispatcher跳转
n 执行完所有代码,再跳转到目标页面。
n 跳转到目标页面后,浏览器地址栏中的URL不会改变。
n 在服务器端重定向。
n 无法跳转到其它服务器上的页面。
forward跳转和RequestDispatcher跳转的区别
(1) forward跳转
n forward动作标记之后的代码,不再执行,立即跳转到目标页面。
n 指定目标页面时,既可以使用绝对路径,也可以使用相对路径。
(2) RequestDispatcher跳转
n 执行完所有代码,包括RequestDispatcher之后的所有代码,再跳转到目标页面。
n 指定目标页面时,只能使用绝对路径。
以上所述是小编给大家介绍的JSP页面跳转方法小结,希望对大家有所帮助,如果大家有疑问欢迎给我留言,小编会及时回复大家的!
前端HTML5十大新特性总结 一 必须知道 写前端的都知道在代码最前面都有这一行代...
分页效果在网页中是常见的,可是怎样才能实现分页呢,今天做了两种方法来实现一...
重要Tips 1.每个等级下做每个等级应该做的事可以帮领导做更高层级的事但不要帮下...
本文转载自微信公众号「 jinjunzhu」,作者 jinjunzhu 。转载本文请联系 jinjunz...
1.疏远的原因大概是我需要你的时候,而你恰好都不在。 2.有的人对你好,是因为...
企业级开源分布式数据库厂商 PingCAP 日前宣布完成 2.7 亿美元的 D 轮融资,创造...
最近遇到很多居中的问题,就花点时间总结了一下放在这里,以后找也方便 1.居中文...
标题反映的是上周五一个同事咨询我的问题,我觉得这是一个很好的问题。这个问题...
最近呢,公司让写一个组件,要求用正则表达式构建一个中文的匹配组件,许多问题...
来自:机器之心 最近在 GitHub 上最火的项目是一个对视力友好的十六进制编辑器,...