首页 课程 师资 教程 报名

Java跳转页面的几种方法

  • 2022-04-14 09:51:53
  • 9756次 动力节点

Java跳转页面有几种方法?动力节点小编来告诉大家。

Java跳转页面的几种方法

小服务程序:

当然,在 servlet 中,跳转一般发生在 doGet、doPost 等方法中。

1.重定向

响应。SendRedirect("/a.sp");

页面的路径是相对路径。SendRedirect 可以将一个页面重定向到任何页面,并且不一定限于 Web 应用程序,例如:

响应。SendRedirect("//www.jb51.net");

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

如果要通过这种方式传出值,只能在url或者session中带参数传递,不能通过request-setattribute传递。

2.前进的道路

RequestDispatcher 调度程序 = 请求。GetRequestDispatcher("/a.sp");

调度员。转发(请求、响应);

页面的路径是相对路径。前进模式只能跳转到本 Web 应用程序中的页面。

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

这样传值的方式有3种:url中的parameter、session、request-setattribute

JSP:

1.响应。发送重定向();

servlet 执行 response.sendredirect() 的方式相同。

Out.flush() 不允许在此语句之前。如果是这样,就会有一个例外:

Java. Lang.IllegalStateException: Can 't sendRedirect () after data has commited to the client。

在 Caucho. Server服务器。联系。抽象HttpResponse。发送重定向(AbstractHttpResponse。Java:558)

跳转后浏览器地址栏变化

如果要跳转到不同的主机,跳转后,这条语句后面的语句会继续执行,就好像开启了一个新的Java线程,但是response的操作是没有意义的;

如果要跳转到同一个主机,该语句后面的语句直到执行完成才会跳转;

2.响应。SetHeader("位置", "");

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

跳转后浏览器地址栏变化

该语句后面的语句在完成之前不会跳转

选你想看

你适合学Java吗?4大专业测评方法

代码逻辑 吸收能力 技术学习能力 综合素质

先测评确定适合在学习

在线申请免费测试名额
价值1998元实验班免费学
姓名
手机
提交