当前位置:  编程技术>java/j2ee

java servlet 几种页面跳转的方法

    来源: 互联网  发布时间:2014-10-23

    本文导语:  Servlet: 当然,在servlet中,一般跳转都发生在doGet, doPost等方法里面。 1) redirect 方式 response.sendRedirect("/a.jsp"); 页面的路径是相对路径。sendRedirect可以将页面跳转到任何页面,不一定局限于本web应用中,如: response.sendRedirect("http...

Servlet:

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

1) redirect 方式

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

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

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

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

这种方式要传值出去的话,只能在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(),如果有,页面不会跳转。

跳转后浏览器地址栏变化

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


    
 
 

您可能感兴趣的文章:

  • java命名空间javax.xml.ws.handler接口messagecontext成员方法: servlet_context定义参考
  • JCreator里为什么找不到java.servlet.* java.servlet.http.* 类 ,求助!
  • java命名空间javax.xml.ws.handler接口messagecontext成员方法: servlet_response定义参考
  • 请问用javac编译一般*.java能通过,但不能编译Servlet写的*.java.提示javax.servlet.http不存在。
  • java命名空间javax.xml.ws.handler接口messagecontext成员方法: servlet_request定义参考
  • 关于servlet 的编译问题,怎样设置classpth,把那些java servlet类包含到classpath?而且无法调用servlet!谢谢!
  • java Servlet获取和设置cookie实例代码
  • 在java控制台程序中,可以用System.exit(0);使用一个程序终止,那么在servlet中如何使一个servlet程序终止呢?
  • java Servlet实现Session创建存取以及url重写代码示例
  • 很菜鸟的问题: 请看我的servlet的helloworld.java程序编译时为什么出现这些错误??我用的是jdk,环境变量里面已经设置了servlet包。
  • 我在jbuilder中新建一个servlet,源程序为java文件,是怎么从java到servler转换的?
  • 学JAVA是先学JSP还是SERVLET?
  • 我要晕倒了,怎么在java.sun.com/products/servlet下找不到servlet的开发包在哪下载,1个小时都浪费了,帮忙啦*_*
  • 关于Servlet的导入java package?
  • 菜鸟问题:编译后提示错误,package java.servlet doesn't exsit
  • 大家好,我下载的j2sdk1.4标准版里面怎么不包括,java.servlet和java.security呀?
  • 关于编译java servlet
  • Javabeans及Java Servlets
  • Java Servlet是什么东东,它和JSP有什么关系,谢谢。
  • 在编译使用扩展标签的java文件时,得到package javax.servlet.jsp does not exist,package javax.servlet.jsp does not exist的错误
  • servlet和java bean 到底是什么关系呀???
  • 在JSP页面中能否显示JB中的对话框或者JAVA应用程序?是在web页面内显示。谢谢高手指点
  • 能在JavaScript中访问Jsp页面的Java对象?
  • java.util类对象的DATE方法为何不能用? <%=new java.util.date()%>,在页面中是这样写的,服务器用的是Resin.
  • 如何用JAVA实现访问静态页面上的……
  • Java的图片展示页面生成工具 Nail6
  • 能否给个在JSP页面中用JAVA画线条和矩形的简单例子,谢谢!
  • Linux下调用JSP页面产生无法找到Java Beans的错误
  • 利用Java 技术,怎样把JSP页面中的表格数据导入到microsoft Excel中
  • Error 500 在JSP页面中出现的原因到底是什么?java代码不规范?
  • 请教:java bean在实例在各个页面共享???
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • java命名空间java.lang类runtime的类成员方法: runfinalization定义及介绍
  • Java中如何通过方法名动态调用方法?
  • java命名空间java.awt.im类inputcontext的类成员方法: getinputmethodcontrolobject定义及介绍
  • <%@ page import="java.lang.Math"%>后用round(float a)方法,怎么报找不到round方法?
  • java命名空间java.sql类types的类成员方法: java_object定义及介绍
  • java初学--在java中有个native本地方法 说是能嵌入c 不知道具体?
  • java命名空间java.lang类system的类成员方法: runfinalization定义及介绍
  • 在JAVA中只有一种派生子类的方法吗?我记得在C++ 中有3种派生方法的!
  • java命名空间java.lang类stacktraceelement的类成员方法: isnativemethod定义及介绍
  • java根据方法名称取得反射方法的参数类型示例
  • java命名空间java.lang类stacktraceelement的类成员方法: getmethodname定义及介绍
  • 请问java.sql包中 preparedStatement 对象的setString(int parameterIndex,java.lang.String x)方法怎么用?
  • java命名空间java.awt.im.spi接口inputmethod的类成员方法: dispose定义及介绍
  • 有没有一种工具可以让java自动调出类的方法、成员?就像Delphi一样,写完Edit1.系统会跳出一些TEdit的属性、方法。
  • java命名空间java.net类httpurlconnection的类成员方法: getrequestmethod定义及介绍
  • 各位高手知道在JAVA中如何用一个名称创建一个对象实例,并调用其方法,注意:在编写代码时并不知要创建的对象的类名,也并不知方法名
  • java命名空间java.security类policyspi的类成员方法: enginerefresh定义及介绍
  • java 与 C++ 实现后绑定的方法
  • java命名空间java.awt.im.spi接口inputmethod的类成员方法: getcontrolobject定义及介绍
  • 谁能告诉我哪里能找到java包内部类及方法使用介绍
  • java命名空间java.security类policy的类成员方法: refresh定义及介绍
  • JAVA里面的方法是怎么样把参数值返回?
  • java命名空间java.awt.datatransfer类dataflavor的类成员方法: imageflavor定义及介绍
  • 我想学JAVA ,是买THINK IN JAVA 还是JAVA2核心技术:卷1 好???
  • java命名空间java.lang.management类managementfactory的类成员方法: getcompilationmxbean定义及介绍
  • 请问Java高手,Java的优势在那里??,Java主要适合于开发哪类应用程序
  • java命名空间java.lang.management接口runtimemxbean的类成员方法: getlibrarypath定义及介绍
  • 如何将java.util.Date转化为java.sql.Date?数据库中Date类型对应于java的哪个Date呢
  • java命名空间java.lang.management接口runtimemxbean的类成员方法: getstarttime定义及介绍
  • 大家好,我下载的j2sdk1.4标准版里面怎么不包括,java.servlet和java.security呀? iis7站长之家
  • java命名空间java.awt.datatransfer类dataflavor的类成员方法: stringflavor定义及介绍


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3