`
wangzjie
  • 浏览: 74753 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

jsp servlet跳转

阅读更多
<jsp:forward> 使用同一个 request ,是在服务器端跳转,浏览器显示的是第一个页面的名字,因为客户端(浏览器)不知道它在服务器端跳转了。
Response.sendRedirect 是两个不同的 request ,是在客户端跳转,浏览器显示的是跳转后的页面的名字。因为它是从客户端跳转到第二个页面的。
 
 
 

使用 forward 时,由于只是发送一次 request 请求, request 设置的属性( setAttribute )依然能保留在下一个页面。
使用 sendRedirect 时,由于发送两次 request 请求,所以在下一个不能获取 request 属性。但可以通过重写 URL 的方式将内容传递过去。
下面举例说明:
tian.jsp    
<%request.setAttribute("river","redwater");
    request.setAttribute("country","daguaiwan");
%>
<jsp:forward page="fengshan.jsp" />
 
 
donglan.jsp    
<%request.setAttribute("river","redwater");
    request.setAttribute("country","daguaiwan");
%>
<a href="fengshan.jsp">fengshan</a>
 
 
bama.jsp    
<%request.setAttribute("river","redwater");
    request.setAttribute("country","daguaiwan");
    response.sendRedirect("fengshan.jsp");
%>
 
 
fengshan.jsp
<%=request.getAttribute("river")%><br/>
<%=request.getAttribute("country")%>
redwater
daguaiwan
 
null
null
 
null
null
 
结果分析:
tiane.jsp是通过forward跳转到fengshan.jsp的,这两个页面享用的是同一个request,故fengshan.jsp可以接收到tiane.jsp通过 request设置的属性。
donglan.jsp是通过href发送了另外的request请求,bama.jsp是通过sendRedirect跳转,用的也是另外的request请求,故fengshan.jsp不可以接收到这两个页面通过 request设置的属性。
 
JspServlet之间的跳转:
Jsp跳转Servlet可以使用<jsp:forward page=”URL” />或者response.sendRedirect(URL)都可以,它们之间的区别上面已经说明了。
 
Servlet跳转Jsp
²        getRequestDispatcherforward(request, response)方法,这里也只是发送了一次请求,可以在下一个页面接受request设置的属性。
²        response.sendRedirect(URL),这里发送了两次请求,不可以在下一个页面接受request设置的属性
例子如下:
servlettiane.jsp    
<%request.setAttribute("river","redwater");
    request.setAttribute("country","daguaiwan");
%>
<jsp:forward page="/tiane" />
 
servletbama.jsp    
<%request.setAttribute("river","redwater");
    request.setAttribute("country","daguaiwan");
    response.sendRedirect("/ForwardRedirect/tiane");
%>
 
Tiane.java
publicclass Tiane extends HttpServlet {

  publicvoid doGet(HttpServletRequest request, HttpServletResponse response)
      throws ServletException, IOException {
//    response.sendRedirect("/ForwardRedirect/fengshan.jsp");
    this.getServletConfig().getServletContext()
            .getRequestDispatcher("/fengshan.jsp").forward(request, response);
  }

  publicvoid doPost(HttpServletRequest request, HttpServletResponse response)
      throws ServletException, IOException {
    doGet(request, response);
  }    
}
 
再在web.xml中配置servlet:
  <servlet>
  <servlet-name>tiane</servlet-name>
  <servlet-class>com.dvnchina.test.Tiane</servlet-class>
  </servlet>
  <servlet-mapping>
  <servlet-name>tiane</servlet-name>
  <url-pattern>/tiane</url-pattern>
</servlet-mapping>

分享到:
评论

相关推荐

    jsp与Servlet跳转实例

    ### jsp与Servlet跳转实例:深入理解信息提交与页面跳转 在Web开发中,JSP(Java Server Pages)和Servlet是两个重要的技术组件,它们共同协作来处理客户端请求并生成动态网页内容。本文将详细解析一个具体的案例...

    jsp与Servlet跳转

    ### jsp与Servlet跳转详解 #### 一、引言 在Java Web开发中,页面间的跳转是一项基本且重要的功能。本篇文章将通过具体的示例来深入探讨JSP与Servlet之间的跳转机制,帮助读者更好地理解其工作原理及应用场景。 #...

    servlet跳转的几种情况

    Servlet 跳转可以分为 Redirect 跳转和 Forward 跳转两种,JSP 跳转也可以使用这两种方式,但是需要注意 JSP 的特殊性。了解 Servlet 跳转的几种情况,可以帮助开发者更好地控制程序的流程和数据传递。

    servlet/jsp跳转

    在实际开发中,理解和掌握Servlet与JSP的跳转机制以及它们如何协同工作,对于构建高效、可维护的Java Web应用至关重要。同时,合理利用Eclipse或MyEclipse这样的IDE能提升开发效率,更好地实现需求。

    java-web学习demo--最简单的servlet jsp跳转传值

    本示例"java-web学习demo--最简单的servlet jsp跳转传值"主要展示了如何通过Servlet处理HTTP请求,并将数据传递到JSP页面进行展示。下面将详细讲解这个过程。 1. **Servlet**: Servlet是Java编程语言中实现服务器...

    jsp servlet MVC Demo

    在JSP中,我们通常会定义`&lt;jsp:include&gt;`、`&lt;jsp:forward&gt;`等动作元素来实现页面的组织和跳转。 二、Servlet Servlet是Java EE规范中的一部分,它是一个Java类,用于处理HTTP请求并生成响应。当用户向服务器发送...

    jsp与Servlet跳转实例借鉴.pdf

    JSP与Servlet跳转实例借鉴 本资源是关于JSP与Servlet跳转实例的借鉴,通过三个JSP页面(Index.jsp、Input.jsp、Confirm.jsp)和三个Servlet(InputServlet、ConfirmServlet、ResultServlet)来实现用户登录验证和...

    JSPServlet新手学习资料

    **JSP和Servlet基础知识详解** ...理解并掌握这些基本概念对于JSPServlet新手来说至关重要,它们构成了开发Web应用的基础。在实际开发中,根据需求选择合适的方法,可以构建高效、功能丰富的Web应用。

    基于jsp+servlet+Ajax异步登陆模拟web项目

    【基于jsp+servlet+Ajax异步登陆模拟web项目】是一个典型的Web开发实例,它整合了三种核心技术:JavaServer Pages(JSP)、Servlet以及Asynchronous JavaScript and XML(Ajax)。这个项目的核心目的是实现用户登录...

    jsp servlet实现 学生管理系统.zip

    6. **请求处理与转发**: 在Servlet中,通过`request.getRequestDispatcher()`方法转发请求到特定的JSP页面,或者使用`response.sendRedirect()`重定向到其他URL,实现页面间的跳转。 7. **EL(Expression Language...

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

    本文实例总结了jsp和servlet中实现页面跳转的方式。分享给大家供大家参考,具体如下: 假设要求从test1.jsp 跳转到test2.jsp 一. jsp中跳转: 1. 使用RequestDispatcher.forward方法转发 &lt;&#37; ...

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

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

    jsp+servlet实现简单的登录注册

    而"CeShi"可能是项目的源代码文件夹,包含JSP文件(如login.jsp、register.jsp)、Servlet文件(如LoginServlet.java、RegisterServlet.java)和其他辅助类。JSP文件通常负责展示界面,Servlet文件则负责处理后台...

    jsp+Servlet实现简单的登陆

    在IT行业中,Web开发是至关重要的领域,而Java平台上的Servlet和JSP(JavaServer Pages)是构建动态网站的常用技术。本示例探讨的是如何使用这两种技术来实现一个简单的登录功能,这是一个基础但关键的功能,对于...

    jsp+servlet+jdbc实现增删改查项目

    史上最简单的jsp+servlet+jdbc实现CRUD项目,已经经历了千锤百炼的测试与修改,健壮性一级棒!没有任何问题。...输入正确进入welcome页然后跳到查看学生信息页,输入错误进error.jsp,然后自动跳转回登录页。

    servlet实现的页面跳转

    在"韩顺平"的教程中,你可能会看到如何结合实际的web项目结构,将Servlet与JSP页面配合使用,实现动态内容生成和页面跳转。通常,Servlet负责业务逻辑处理和数据准备,然后通过请求转发或重定向将结果展示在JSP页面...

    JSP SERVLET代码参考

    在Java Web开发中,JSP(JavaServer Pages)和Servlet是两种重要的技术,它们共同构成了动态网站的基础。本文将深入探讨这两个技术的核心概念、应用场景以及它们之间的交互。 **JSP技术** JSP是一种用于创建动态...

    Jsp Servlet教程专栏

    了解如何优化JSP和Servlet的性能,如避免不必要的JSP页面跳转,合理使用Session,以及使用缓存等技术,都是提升Web应用性能的重要手段。 9. 安全性: 在开发过程中,考虑安全性问题也是必要的,比如防止SQL注入、...

    五种JSP页面跳转方法详解

    `RequestDispatcher.forward()` 是一种服务器端内部的重定向方式,其特点是将请求转发到应用服务器内部的另一个资源(可以是JSP或Servlet)。这种方式不会改变客户端浏览器的地址栏显示,同时可以保留请求域中的数据...

    jsp_servlet登录注册例子

    5. **结果反馈**:根据数据库操作的结果,Servlet会决定是成功跳转到欢迎页面,还是返回错误信息到JSP页面。例如,如果注册成功,用户会被重定向到主页;如果登录失败,错误消息会在JSP页面上显示。 6. **安全考虑*...

Global site tag (gtag.js) - Google Analytics