`
loquat
  • 浏览: 70091 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

动态与静态INCLUDE -- Forward和Redirect的区别

阅读更多

动态INCLUDE与静态INCLUDE的区别

动态include:
    jsp:include动作实现

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

   它总是会检查所含文件中的变化,适合用于包含动态页面,并且可以带参数。
静态INCLUDE
   <%@ include file="included.htm" %> 
    用include伪码实现,定不会检查所含文件的变化,适用于包含静态页面。

二者区别分析:
1. 静态include的结果是把其他jsp引入当前jsp,两者合为一体
    动态include的结构是两者独立,直到输出时才合并( 看看jsp生成的java文件就可以知道了)
2.正是因为这样,动态include的jsp文件独立性很强,是一个单独的jsp文件,需要使用的对象,页面设置,都必须有自己创建,
   当然,  还好它和include它的页面的request范围是一致的.
   而静态include纯粹是把代码写在外面的一种共享方法,所有的变量都是可以和include它的主文件共享,两者高度紧密结
   合,不能有变量同名的冲突.而页面设置也可以借用主文件的.

 

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

 

Forward和Redirect的区别
   
   Forward: (an internal transfer in servlet)。RequestDispatcher.forward()方法
   服务器内部重定向,程序收到请求后重新定向到另一个程序,客户机并不知道。
   forward 会将 request state , bean 等等信息带往下一个 jsp,如果你需要在下一个页面中能从中获取新的信息
   的话,你可以Request.setAttribute()来放置一些标志,这样从下一个页面中获取。

  Redirect: HttpServletResponse.sendRedirect()方法重定向,是服务器收到请求后发送一个状态头给客户,客户
  将再请求一次,这里有两次网络通信的来往。有2次request,第2次request将丢失第一次的attributs/parameters 等信息。这样,从浏览器的地址栏中可以看到跳转后的链接地址。

分享到:
评论

相关推荐

    JSP和SERVLET笔试常遇到的一些问题

    4. JSP动态INCLUDE与静态INCLUDE: - 动态INCLUDE:使用&lt;jsp:include&gt;,每次请求都会检查被包含页面是否更新,适合包含动态内容。 - 静态INCLUDE:使用&lt;%@ include %&gt;,只在编译JSP时执行一次,适合包含静态内容。...

    华为面试题

    3. **JSP 中的动态和静态INCLUDE**: - 动态INCLUDE(`jsp:include`):每次请求都会检查包含文件的最新内容,适合包含动态内容。 - 静态INCLUDE(`&lt;%@ include file=""&gt;`):只在编译时包含文件,不检查后续变化...

    Java-Web简答题.docx

    JSP 中动态 INCLUDE 与静态 INCLUDE 的区别 JSP 中有两种 INCLUDE 方式:静态 INCLUDE 和动态 INCLUDE。 * 静态 INCLUDE:&lt;%@include %&gt;,指令元素;编译时包含;对所包含的文件进行语法分析。 * 动态 INCLUDE:...

    Java Web类

    4. JSP 中动态 INCLUDE 与静态 INCLUDE 的区别 JSP 中有两种 INCLUDE 机制:动态 INCLUDE 和静态 INCLUDE。动态 INCLUDE 用 jsp:include 动作实现,可以带参数,适合用于包含动态页面。静态 INCLUDE 用 include ...

    移通笔试.doc

    静态include与动态include的区别 - **静态include**:在编译阶段就将被包含的文件合并到主文件中,生成一个新的文件,不会多次编译。 - **动态include**:在运行时才进行合并,每次请求都会重新加载被包含的文件,...

    125条常见的java面试笔试题大汇总

    3. **forward 和 redirect 的区别** - forward 是服务器内部重定向,客户端浏览器地址栏不会改变,请求的资源直接由服务器处理并返回。 - redirect 是服务器向客户端返回一个 HTTP 状态码,指示浏览器重新发起一个...

    J2EE笔试面试题

    1. **转发(Forward)与重定向(Redirect)的区别** - **转发(Forward)**:服务器内部操作,不改变URL。服务器接收到请求后,会直接处理指定的资源,并将结果返回给客户端,客户端浏览器地址栏中的URL不会改变。 ...

    java试题参考

    4. **JSP动态和静态INCLUDE的区别**: - **动态INCLUDE(jsp:include)**:每次请求都会检查被包含页面的变化,适合动态内容,可以带参数。 - **静态INCLUDE(%@ include file %)**:仅在编译时包含,不会检查页面...

    JSP试题及答案(1)1

    2.jsp有哪些动作 3.forward 和redirect的区别 4.JSP中动态INCLUDE与静态INCLUDE的区别 5.两种跳转方式分别是什么 6.J

    Java最全的面试整理

    **72、动态INCLUDE与静态INCLUDE的区别** - 动态`&lt;jsp:include&gt;`:在每次请求时都会重新包含目标页面,适用于动态内容。 - 静态`&lt;%@ include file=""&gt;`:在编译JSP时即包含文件,不检查文件变化,适用于静态内容。 ...

    java 精选面试题全集

    - 静态INCLUDE(`&lt;%@ include file="..." %&gt;`):不检查变化,适用于静态内容。 **Servlet 方面:** 1. **Servlet 生命周期** - 加载和实例化:Servlet容器加载Servlet类并创建其实例。 - 初始化:调用`init()`...

    jsp面试题[参照].pdf

    12. **JSP中动态INCLUDE与静态INCLUDE** - 动态INCLUDE(jsp:include)实时检查被包含页面的变化,适合包含动态内容,可以传递参数。 - 静态INCLUDE( &lt;%@ include %&gt; )一次性包含,不检查更新,适用于包含静态内容。...

    jsp面试考题

    #### 题目三:forward与redirect的区别 下列关于JSP和Servlet中forward与redirect的描述,哪一项是不正确的? - forward不会改变浏览器地址栏中的URL,而redirect会。 - 在forward和redirect的情况下,服务器都会...

    java 面试问题实用

    JSP中动态include与静态include的区别 - **动态include**:运行时加载页面,可以传递参数。 - **静态include**:编译时合并代码,相当于直接插入HTML代码。 #### 12. 应用服务器与Web Server的区别 - **Web ...

    Java面试题1

    forward 与 redirect 的区别 - **forward**: - 在服务器端进行的页面重定向,不改变浏览器地址栏中的 URL。 - 只能在同一 Web 应用程序内部进行。 - 可以传递 `request` 和 `response` 对象。 - **redirect**: ...

    jsp面试题.docx

    #### 六、JSP动态Include与静态Include的区别 **知识点概述:** JSP支持两种类型的包含:动态Include和静态Include。 1. **动态Include**: - 使用`&lt;jsp:include&gt;`标签实现。 - 总是检查被包含文件的变化。 - ...

    JSP课程目录

    - &lt;jsp:forward&gt;和&lt;jsp:redirect&gt;处理页面跳转 - 创建和操作JavaBean - 和设置和获取Bean属性 2. **JSTL(JavaServer Pages Standard Tag Library)** - JSTL简介和优点 - JSTL核心库(fmt, fmt, sql, ...

    javaweb 简历

    动态 INCLUDE 与静态 INCLUDE 的区别 JSP 中有两种 INCLUDE 方式:动态 INCLUDE 和静态 INCLUDE。动态 INCLUDE 用 jsp:include 动作实现,它总是会检查所含文件中的变化,适合用于包含动态页面,并且可以带参数。...

    java笔试题小结

    **分析与解答**: JSP 支持两种 include 动作:静态 include 和动态 include。 - **静态 include**: 使用 `&lt;%@ include file="included.jsp" %&gt;` 实现,在编译阶段合并到主 JSP 文件中,只在编译时处理。 - **动态 ...

    javaWeb面试题1

    10. **Servlet API中的forward()和redirect()区别**: - forward()仅一次请求,redirect()两次。 - forward()在request作用域中传递数据,redirect()不能。 - redirect()可跨应用,forward()局限于当前应用。 ...

Global site tag (gtag.js) - Google Analytics