forward方法是把请求的内容转发到另外的一个servlet.而include是把另一个servlet处理过后的内容拿过来.
举例来说比如在servlet1打一句out.print("1111"),servlet2打上out.print("22222"),在servlet1中用forward命令会转到servlet2中,显示22222.
而在servlet1中使用include方法会依然在servlet1的页面中,但是在1111后打出22222
forward与redirect区别
forward仅是容器中控制权的转向,在客户端浏览器地址栏中不会显示出转向后的地址;
redirect则是完全的跳转,浏览器将会得到跳转的地址,并重新发送请求链接。这样,从浏览器的地址栏中可以看到跳转后的链接地址。
所以,forward更加高效,在forward可以满足需要时,尽量使用forward()方法,并且,这样也有助于隐藏实际的链接。
在有些情况下,比如,需要跳转到一个其它服务器上的资源,则必须使用sendRedirect()方法。
1.从地址栏显示来说 forward是服务器请求资源,服务器直接访问目标地址的URL,把那个URL的响应内容读取过来,然后把这些内容 再发给浏览器.浏览器根本不知道服务器发送的内容从哪里来的,所以它的地址栏还是原来的地址. redirect是服务端根据逻辑,发送一个状态码,告诉浏览器重新去请求那个地址.所以地址栏显示的是新的URL.所 以redirect等于客户端向服务器端发出两次request,同时也接受两次response。
分享到:
相关推荐
Servlet与JSP都是Java Web开发中的关键技术,它们之间既有区别又有联系。 - **Servlet**主要用于控制逻辑和数据处理,可以实现复杂的业务逻辑和数据交互操作。Servlet通过编程方式处理HTTP请求,生成响应内容。 - *...
JSP(JavaServer Pages)和Servlet是Java Web开发中两个核心的技术,它们主要用于构建动态网站。下面将详细阐述这两个概念以及它们在笔试中常遇到的问题。 1. JSP内置对象: - request:代表HttpServletRequest对象...
**六、Servlet API中的forward()和redirect()** 1. **forward()**:服务器端的转发,URL不变,效率较高,常用于内部跳转,避免暴露实际路径。 2. **redirect()**:客户端重定向,浏览器地址栏显示新URL,效率较低,...
在实际开发中,理解和掌握Servlet与JSP的跳转机制以及它们如何协同工作,对于构建高效、可维护的Java Web应用至关重要。同时,合理利用Eclipse或MyEclipse这样的IDE能提升开发效率,更好地实现需求。
### forward与redirect的区别 1. **地址栏显示**: - `forward`(转发)不会改变浏览器地址栏中的URL。 - `redirect`(重定向)会导致浏览器地址栏中的URL发生变化。 2. **服务器资源消耗**: - `forward`只...
Servlet请求转发、重定向和包含是Servlet中处理客户端请求的重要技术,它们都涉及到如何有效地管理用户请求和页面跳转,但各自有不同的特性和应用场景。 1. **请求转发(Request Forward)** - 请求转发是在服务器...
Web编程中的JSP(JavaServer Pages)和Servlet是两种核心的技术,它们被广泛应用于构建动态网页应用程序。在面试中,了解这些技术的基本概念、工作原理和相关实践是至关重要的。 1. **Tomcat配置**: - `JAVA_HOME...
forward(ServletRequest, ServletResponse) - Method in interface javax.servlet.RequestDispatcher Forwards a request from a servlet to another resource (servlet, JSP file, or HTML file) on the server. ...
Servlet 中 forward() 与 redirect() 的区别 Servlet 中有两种页面跳转方式:forward() 和 redirect()。 * forward():一次请求,在容器中控制权的转向,在客户端浏览器地址栏中不会显示出转向后的地址。 * ...
**通过JSP页面访问Servlet**,通常在JSP中使用`<jsp:forward>`或`<jsp:include>`动作元素,或者通过HTML表单的`action`属性指定Servlet的URL来实现。 **共享变量**在Servlet中,可以使用ServletContext对象来共享...
- **Servlet通信**:Servlet之间可以通过转发(forward)和重定向(redirect)机制进行通信,其中转发保持了原始请求URL,而重定向则会改变浏览器的地址栏显示。 #### 三、JavaServer Pages (JSP) 规范及语法 JSP是另...
Forward 和 Redirect 都是Servlet 中的请求转发机制,但它们的实现方式不同。Forward 是服务器请求资源,服务器直接访问目标地址的 URL,把那个 URL 的响应内容读取过来,然后把这些内容再发给浏览器,浏览器根本不...
在IT行业中,JSP(JavaServer Pages)和Servlet是两种重要的技术,主要用于构建动态Web应用程序。JSP是一种视图技术,而Servlet则是用于处理HTTP请求的Java类。本教程“Wiz书库经典教程JSP Servlet”涵盖了这些核心...
本文档总结了 Java Web 面试题一的答案,涵盖了 Servlet 生命周期、Servlet 和 CGI 的区别、forward 和 redirect 的区别、JSP 中动态 include 和静态 include 的区别、JSP 的内置对象、JSP 的常用指令、JSP 的动作、...
涵盖了 CSS 和 DIV 开发的优势、页面间参数传递方式、hidden 表单域的作用、JSP 内置对象、Session 和 Application 对象的作用、JSP 动作、Java Servlet API 中 forward 和 redirect 的区别、Class.forName 的作用、...
本文总结了Java web开发面试中的一些常见问题和答案,涵盖了forward和redirect的区别、JSP中的INCLUDE、应用服务器、数据连接池、JSP的内置对象、JSP指令、Servlet的生命周期等知识点。 一、forward和redirect的...
forward 和 redirect 的区别 在 JavaWeb 中,forward 和 redirect 是两种不同的跳转方式。forward 是服务器请求资源,服务器直接访问目标地址的 URL,把那个 URL 的响应内容读取过来,然后把这些内容再发给浏览器,...
JSP 中动态 INCLUDE 和静态 INCLUDE 是两种不同的 INCLUDE 机制: * 动态 INCLUDE:在运行时包含其他 JSP 文件 * 静态 INCLUDE:在编译时包含其他 JSP 文件 22. Servlet 的基本架构 Servlet 的基本架构包括: * ...
7. **forward()与redirect()**:`forward()`内部转发,保持请求状态;`redirect()`外部重定向,新请求,丢失请求参数。 8. **Servlet基本架构**:Servlet通过`web.xml`配置或注解定义,容器(如Tomcat)负责实例化...