zoukankan      html  css  js  c++  java
  • JSP中include指令和include动作区别

    首先

    <%@ include file=” ”%>:为指令元素

    <jsp:include page=” ” flush=”true”/>:为 动作元素

    先说指令元素:

    include指令元素读入指定页面的内容。并把这些内容和原来的页面融合到一起。

    然后经过两个阶段:

    1.将jsp翻译成 servlet 

    2.servlet 翻译成 .class文件

    这样的话,在被引入文件中请不要加入 contentype 的属性 ,因为jsp页面中不能指定多个contentType

    动作元素:

    它并没有把所要添加的jsp的代码加入到被添加的jsp中

    只是在运行时引入了要添加的jsp页面执行后所产生的应答,这意味着我们可以指定任何能够产生应答的Web资源,(例如一个servlet或一个jsp页面),只要这些资源所产生的类型和jsp页面产生的编码类型相同(如果编码类型不同,则会出现乱码).JSP容器将通过一个内部的函数调用来执行指定的资源,因此,这些被引入的资源可以帮 助处理原来的请求,所以这些资源可以访问请求作用域内的所有对象.以及所有原来的请求参数.

    如果修改了要添加的jsp页面,那么可以立刻使用该页面的最新版本,这是因为对待被引入的页面的方式与对待由浏览器直接调用的jsp页面的方式完全相同。即容器检测页面的变化,并自动进入翻译阶段,以得到页面的最新版本。

    以下是对include 两种用法的区别,主要有两个方面的不同:

    执行时间上:

    <%@ include file=”   .jsp”%> 是在翻译阶段执行

    <jsp:include page=”  .jsp” flush=”true” /> 在请求处理阶段执行.

    引入内容的不同:

    <%@ include file=”  .jsp”%>引入静态文本(html,jsp),在JSP页面被转化成servlet之前和它融和到一起.

    <jsp:include page=”  .jsp” flush=”true” />引入执行页面或servlet所生成的应答文本.

    大家可以参考:http://developer.51cto.com/art/200902/111134.htm

  • 相关阅读:
    Extjs4.0以上版本 Ext.Ajax.request请求的返回问题
    C# NPOI 操作Excel 案例
    C# Microsoft.Office 操作Excel总结
    asp.net core NLog将日志写到文件
    新装的SSMS一打开就显示VS许可证过期,但VS又运行正常,解决方法。
    sql server 查询log日志 sql语句
    sql server 删除所有表及所有存储过程、所有视图和递归查询、数字类型转为字符串
    C#使用Selenium+PhantomJS抓取数据
    python爬虫实例项目大全
    SQL Server TVPs 批量插入数据
  • 原文地址:https://www.cnblogs.com/lizhiyan-world/p/3734522.html
Copyright © 2011-2022 走看看