java servlet 几种页面跳转的方法及传值

java web 页面之间传值有一下这几种方式
1.form 表单传递参数
2.url地址栏传递参数
3.session
4.cookie
5.application

6.通过隐藏域传值

7.通过JavaBean进行传值

8. request.setAttribute("strRequest", strRequest);

9.response.setAttribute("name",name)来传至下一个页面

10.response.sendRedirect():在用户的浏览器端工作,sengRedirect()可以带参数传递,比如servlet?name=tom传至下个页面,同时它可以重定向至不同的主机sendRedirect()可以重定向至有frame的jsp文件。重定向后在浏览器地址栏上会出现重定向页面的URL。

11.

1) redirect 方式

response.sendRedirect("/a.jsp");

页面的路径是相对路径。sendRedirect可以将页面跳转到任何页面,不一定局限于本web应用中,如:

response.sendRedirect("http://www.jb51.net");

跳转后浏览器地址栏变化。

这种方式要传值出去的话,只能在url中带parameter或者放在session中,无法使用request.setAttribute来传递。

2) forward方式

RequestDispatcher dispatcher = request.getRequestDispatcher("/a.jsp");

dispatcher .forward(request, response);

页面的路径是相对路径。forward方式只能跳转到本web应用中的页面上。

跳转后浏览器地址栏不会变化。

使用这种方式跳转,传值可以使用三种方法:url中带parameter,session,request.setAttribute

JSP:

1) response.sendRedirect();

和servlet的response.sendRedirect()方式一样。

此语句前不允许有out.flush(),如果有,会有异常:

java.lang.IllegalStateException: Can‘t sendRedirect() after data has committed to the client.

at com.caucho.server.connection.AbstractHttpResponse.sendRedirect(AbstractHttpResponse.java:558)

...

跳转后浏览器地址栏变化

如果要跳到不同主机下,跳转后,此语句后面的语句会继续执行,如同新开了线程,但是对response的操作已经无意义了;

如果要跳到相同主机下,此语句后面的语句执行完成后才会跳转;

2) response.setHeader("Location","");

此语句前不允许有out.flush(),如果有,页面不会跳转。

跳转后浏览器地址栏变化

此语句后面的语句执行完成后才会跳转

转:http://www.jb51.net/article/35550.htm

时间: 2024-10-24 03:57:46

java servlet 几种页面跳转的方法及传值的相关文章

JSP与Servlet几种页面跳转的区别

Servlet: 当然,在servlet中,一般跳转都发生在doGet, doPost等方法里面. 1) redirect 方式 response.sendRedirect("/a.jsp"); 页面的路径是相对路径.sendRedirect可以将页面跳转到任何页面,不一定局限于本web应用中,如: response.sendRedirect("http://www.ycul.com"); 跳转后浏览器地址栏变化. 这种方式要传值出去的话,只能在url中带param

servlet中实现页面跳转return “r:”和return “f:

servlet中实现页面跳转return “r:”和return “f:”的区别和作用 2015-07-28 14:22741830480 | 浏览 48 次 Pascal 2015-07-28 14:26 #知道行家专业创造价值,火热招募中!# 提问者采纳 热心网友 r是redirect重定向,参数会丢失,url全是跳转后的url.f是forward服务器内部完成转发(参数仍在request里面),url不会变的.

js中页面刷新和页面跳转的方法总结 [ 转自欢醉同学 ]

.js中cookie的基本用法简介 2009-12-15 js中页面刷新和页面跳转的方法总结 文章分类:Web前端 关键字: javascript js中页面刷新和页面跳转的方法总结 1.history.go(-1), 返回两个页面: history.go(-2); 2. history.back(). 3. window.history.forward()返回下一页 4. window.history.go(返回第几页,也可以使用访问过的URL) 例: <a href="javascri

减少手机页面跳转的方法(转)

在标签页还没有诞生的时候, 浏览器对关键词的搜索似乎只能另起窗口显示搜索结果.且这些结果页散乱无序,假若再返回某一页面,就要从桌面一堆窗口里或者一长串任务栏内去翻找,相信现在用惯有标签页浏览器的同学,应该没有谁会愿意再去用这样的产品.这是一个典型的页面跳转例子,并且散乱无序是用户很头痛的事情.在用户对操作体验越来越重视的今天,让用户无形中享受我们精心设计的操作体验越发显的重要.通过减少页面跳转,减少用户的重复操作就是其中重要的一点,下面列举了一些常见的交互展现形式. 1.浮动弹窗 为了避免跳转页

Web设计中打开新页面或页面跳转的方法 js跳转页面

Web设计中打开新页面或页面跳转的方法 一.asp.net c# 打开新页面或页面跳转 1. 最常用的页面跳转(原窗口被替代):Response.Redirect("newpage.aspx"); 2. 利用url地址打开本地网页或互联网:Respose.Write("<script language=&apos;javascript&apos;>window.open(&apos;"+ url+"&apos;)

asp.net页面跳转的方法

1.超链接 2.response.Redirect(“UrlString”) 过程: 浏览器操作--服务器编译--发回页面--浏览器按新URl发出请求--服务器响应新URl请求--编译新页面--发回浏览器 3.Server.Transfer(“UrlString”) 4.PostBackUrl 凡是具有IButtonControl借口的控件都有PostBackUrl属性,用来定义提交至那个页面地址.(可以是本站也可以使外站) 这种方法的跳转,目标页面可以调用原页面中控件的值. asp.net页面

Java web开发中页面跳转小技巧——跳转后新页面在新窗口打开

最近学习Java web,在学习过程中想实现一个需求,就是在jsp页面跳转的时候,希望跳转后的新页面在新窗口中打开, 而不是覆盖原来的页面,这个需求使我困惑了好长时间,后来通过大海捞针似的在网上寻找方法,最后终于得以解决, 现将此方法跟大家分享,如果有不足的地方,请多包涵,我的初衷是能帮助到有这方面需要的人. 之前我在网上也曾搜到过相对靠谱的方法,就是在jsp页面相应位置加入代码:target="_black",如 <a href="articleView?id=${a

推荐几种PHP实现页面跳转的方法

1.PHP实现页面跳转第一种方法 <?php header("Location:http://www.baidu.com"); ?> header()是php内置函数,用于实现页面跳转. 2.PHP实现页面跳转第二种方法:利用 jsecho " < script language="javascript">"; echo "location.href='www.abidu.com'"; echo &qu

PHPの页面跳转-常见方法

PHP页面跳转一.header()函数 header()函数是PHP中进行页面跳转的一种十分简单的方法.header()函数的主要功能是将HTTP协议标头(header)输出到浏览器. header()函数的定义如下: void header (string string [,bool replace [,int http_response_code]]) 可选参数replace指明是替换前一条类似标头还是添加一条相同类型的标头,默认为替换. 第二个可选参数http_response_code强