zoukankan      html  css  js  c++  java
  • JSP中的静态包含和动态包含的区别

    <%-- 静态包含 --%>
    <%@ include file="..." %>
    <%-- 动态包含 --%>
    <jsp:include page="...">
    <jsp:param name="..." value="..." />
    </jsp:include>

    区别:

      1.最终编译成的java文件的数量不同

        静态包含转换成java文件时,将包含文件的内容“复制”到主题文件中,然后作为一个整体编译,最终编译为一个class文件,而动态包含是各个jsp文件分别转换,分别编译,最终编译成多个class文件

      2.执行时间不同

        静态包含是编译时包含 -JSP---->java文件阶段。如果包含的页面不存在则会产生编译错误,而且两个页面的"contentType"属性应保持一致,不能有相同的变量名

          因为两个页面会合二为一,只产生一个class文件,因此被包含页面发生的变化再包含它的页面更新前不会得到更新,需要重新编译更新。

        而动态包含是运行时包含 -执行class文件阶段,可以向被包含的页面传递参数,包含页面和被包含页面是独立的,会编译出多个class文件,

          如果被包含的页面不存在,不会产生编译错误,也不影响页面其他部分的执行

      3.无论是动态包含还是静态包含,其request对象都是相同的。

        静态包含最终编译成一个java文件,有一个request对象。 而动态包含最终编译成多个java文件,其实这些jsp组合的过程,是一个请求转发的过程,自然也使用同一个request对象了

        

  • 相关阅读:
    ASP.NET零碎
    My97DatePicker 和转换 数据库中日期(/Date(1351699200000)/) 的格式
    生成验证码
    自己封装的AJAX (带JSON)
    WebForm
    配置进程外Session
    使用Xcode和Instruments调试解决iOS内存泄露
    IOS block 教程<转>
    iOS app支付宝接口调用的一点总结(补充支付宝SDK&Demo下载地址)
    支付宝在ios应用上的开发[转]
  • 原文地址:https://www.cnblogs.com/xp0813/p/11029680.html
Copyright © 2011-2022 走看看