`
hain
  • 浏览: 454606 次
  • 来自: ...
社区版块
存档分类
最新评论

JSP页面跳转中的问题 [ 总结 ]

阅读更多
页面调转有如下几种方式
1   RequestDispatcher.forward()
2  response.sendRedirect()
3  <jsp:forward page="" /> 
4  修改HTTP header的Location属性来重定向
5  pageContext.forward()
 
我把检验用户是否登录的代码写在一个JSP文件中
代码如下
logincheck.jsp
<%
   if (session.getAttribute("flag") == null   
     || !"ok".equals(session.getAttribute("flag"))) {
    
   //1 跳转方式1
    response.sendRedirect("login.jsp");
    return;
 
    //2跳转方式2     
    //pageContext.forward("login.jsp");    
   }
%>

 

//success.jsp

<%@ page contentType="text/html;charset=Shift_JIS" session="true"
 isErrorPage="false" errorPage="err.jsp" %>

//a  包含方法a
<!-- jsp:include page="logincheck.jsp" flush="true"/----> 

//b 包含方法b
<%@ include file="logincheck.jsp"%>
<html>
  <head>
    <title>Success.jsp</title>
  </head>
  <body>
    This is my JSP page. Success! <br>
    Welcome 
     <%
    out.print("SCHOOL : "+request.getAttribute("school")+"<br>");
    out.print("AGE : "+session.getAttribute("age")+"<br>");
    out.print("CITY : "+application.getAttribute("city")+"<br>");
    %>
  </body>
    <A  href="logout.jsp">ログ アウト</A>
</html>

 我将文件的包含方式和文件的调转方式作了组合测试。

结果如下

--------------------------------------------------

包含方法  |   跳转方法      |   结果

-------------------------------------------------

    a           |      1                |      注1

------------------------------------------------ 

    b           |     1                |       ok 

------------------------------------------------ 

   a            |      2               |      注2

------------------------------------------------ 

   b            |       2              |      ok

------------------------------------------------ 

注1

不做任何调转

注2 

只有将

<jsp:include page="logincheck.jsp" flush="true"/> 

放在代码的第一行才可以。

否则

java.lang.IllegalStateException: Cannot forward after response has been committed at org.apache.catalina.core.ApplicationDispatcher.doForward

 

分享到:
评论

相关推荐

    JSP页面跳转方法总结

    ### JSP页面跳转方法详解 #### 一、概述 JSP(Java Server Pages)是一种动态网页技术标准,被广泛应用于构建动态网站和Web应用程序。在JSP开发中,页面跳转是一项非常基础且重要的功能,它使得用户能够在不同的...

    JSP 登录跳转页面

    在本节中,我们将详细介绍 JSP 登录跳转页面的实现细节,包括首页登录页面、判断 check 页面和最后的成功登录显示页面。 首页登录页面 首页登录页面是用户登录系统的入口点。该页面是使用 JSP 语言编写的,名称为 ...

    jsp页面跳转的五中方法

    ### JSP页面跳转的五种方法详解 #### 一、引言 在Web开发中,页面间的跳转是一项基本且重要的功能。JSP作为Java Web开发中的一个重要组成部分,提供了多种方式来实现页面间的跳转。本文将详细介绍五种常用的JSP页面...

    页面自定跳转 超链接 跳转 jsp页面跳转

    根据给定的文件信息,我们可以深入探讨页面自动跳转、超链接跳转以及JSP页面跳转的相关知识点,尤其关注于HTML、JavaScript以及浏览器兼容性处理。 ### 页面自定义跳转与超链接跳转 页面自定义跳转指的是在网页...

    Springboot+MyBatis+mysql+jsp页面跳转详细示例.docx

    在本示例中,我们探讨的是如何使用SpringBoot框架整合MyBatis,连接MySQL数据库,并通过JSP页面展示数据及实现页面跳转。首先,我们需要理解SpringBoot的核心特性,它是一个简化Spring应用初始搭建以及开发过程的...

    jsp页面的五种跳转方式

    本文将详细介绍 JSP 中五种常用的页面跳转方式及其应用场景。 #### 1. RequestDispatcher.forward() **概念**:`RequestDispatcher.forward()` 是一种服务器端内部转发机制,用于将当前请求转发到同一个 Web 应用...

    jsp页面跳转

    ### JSP页面跳转方法详解 #### 一、RequestDispatcher.forward() **定义与用途:** `RequestDispatcher.forward()` 是一种服务器端的跳转方法,它主要用于在同一个Web应用内部进行页面之间的跳转。该方法的主要...

    jsp和servlet中实现页面跳转的方式实例总结.docx

    JSP 和 Servlet 中实现页面跳转的方式实例总结 在 web 开发中,页面跳转是一个非常常见的需求,JSP 和 Servlet 是 Java Web 开发中两个最基本的组件,了解它们如何实现页面跳转是非常必要的。本文将根据 JSP 和 ...

    五种JSP页面跳转方法详解

    ### 五种JSP页面跳转方法详解 在Web开发中,页面间的跳转是非常常见的需求之一。JSP(JavaServer Pages)作为一种广泛使用的服务器端技术,在实现页面跳转方面提供了多种方式。本文将详细介绍五种JSP页面跳转的方法...

    小结jsp页面跳转问题

    通过本文档,我们将深入探讨几种常用的JSP页面跳转方式:`response.sendRedirect()`、`response.setHeader()`以及`&lt;jsp:forward&gt;`指令,并通过具体的示例代码来解析这些方法的工作原理及注意事项。 #### 一、`...

    JSP_页面跳转,JSP_页面跳转

    在探讨JSP页面跳转这一主题时,我们深入解析其概念、实现方式以及在实际开发中的应用,以此来全面理解JSP技术中的页面跳转机制。 ### JSP页面跳转的概念 页面跳转,通常指的是从一个网页转移到另一个网页的过程。...

    JSP页面的跳转方式汇总

    ### JSP 页面的跳转方式汇总 在Java Server Pages (JSP) 技术中,页面...以上总结了七种JSP页面跳转的方法,每种方法都有其适用场景。开发者应根据实际需求选择最合适的跳转方式,以确保应用程序的高效性和用户体验。

    JSP和HTML跳转.zip_html挑转jsp_jsp和HEML跳转_jsp和HTML跳转

    在Web开发中,JavaServer Pages (JSP) ...总结,HTML页面跳转和JSP与HTML之间的跳转有多种方式,开发者可以根据需求选择合适的方法。在实际应用中,通常会结合使用这些技术,提供流畅的用户体验并处理复杂的业务逻辑。

    jsp_html_web_实现页面跳转

    一、JSP页面跳转 1. **隐式转发(Internal Forward)**:在同一个应用内部,可以通过`RequestDispatcher`的`forward()`方法进行页面跳转。这种方式不会生成新的HTTP请求,而是服务器端将请求数据传递到目标页面,...

    jsp的跳转方式总结

    JSP 跳转方式是指在 JSP 页面中实现跳转到其他页面或资源的技术。下面我们对 JSP 中的三种跳转方式进行总结和分析。 1. response.sendRedirect() response.sendRedirect() 方法是通过在 HTTP 响应头中设置 ...

    JSP跳转方式总结.doc

    在JavaServer Pages (JSP) 开发中,页面跳转是一种常见的操作,它允许用户从一个页面导航到另一个页面。本文将重点讨论两种主要的JSP跳转方式:`RequestDispatcher.forward()` 和 `response.sendRedirect()`,以及...

    JSP中5种跳转的方法

    本文将详细介绍JSP中五种常用的页面跳转方法,并深入探讨它们的特点及应用场景。 ### 1. RequestDispatcher.forward() #### 原理与特点 `RequestDispatcher.forward()` 方法主要用于将请求转发到另一个资源(可以...

    jsp与Servlet跳转

    - 在Java Web应用中,页面跳转通常有两种方式:重定向(Redirect)和转发(Forward)。 - **重定向**:客户端(浏览器)会收到一个新的HTTP响应,并被指示去访问新的URL。这意味着客户端会发送一个新的请求到...

    JS页面跳转和js对iframe进行页面跳转、刷新

    在IT领域,特别是前端开发中,JavaScript(简称JS)被广泛用于实现网页的动态功能,包括页面跳转和对...需要注意的是,在进行页面跳转和刷新操作时,应考虑到用户体验和浏览器的兼容性问题,确保代码的健壮性和可靠性。

Global site tag (gtag.js) - Google Analytics