动态include和静态include区别分析-Java基础

1 、动态include和静态include

1)动态include用jsp:include动作实现<jsp:include page = "include.jsp" flush = "true"它总是会检查所包含的文件中的变化,适合用于包含动态页码,并且可以带参数。各个文件分别先编译,然后组合成一个文件。简而言之,jsp动作实现,不共享request请求域,先编译后包含,检查变化。当请求jsp界面时,实现运行的是编译文件class。两个Java文件,生成多个class文件。可以有相同变量

动态include优点

    A.引入和同步一个动态的界面,使得jsp界面更灵活

    B. 能和不同界面之间进行信息的交互和快捷的实现方式

    C. 改变了原始界面编码放在一个jsp上,使不同功能分别写在不同页面里,通过动态引用到界面,更易于编码,更易于管理。

动态include不足

    动态引入时需要频繁变化和界面信息的更新和交互,要占用大量的资源开销,降低页面的访问速度。

注意:

   a. <jsp:include>动作的flush属性必须要定义,不定义会出现转换错误。而且要设置的flush必须为true;

   b. 在<jsp:include>动作中制定的界面必须是同一个web应用程序的一部分,如果引入非同一个web应用的界面将会导致请求错误。

2)静态include用include伪代码实现,定不会检查所含文件的变化,适用于包含静态界面<%include file="include.htm"%>。先将文件代码原封不动加入到主界面,合成一个文件,然后再进行翻译,此时不允许有相同的变量。简而言之,jsp指令实现,共享request请求域,先包含再编译,不检查界面变化。只生成一个java文件。不允许有相同的变量。父界面和子界面的page指令不要有冲突。

用法的区别:

1)执行时间:

a.静态:<%@include file = "relativeURI%">是再翻译阶段执行;

b.动态:<jsp:include page = "relativeURI" flush = "true">请求处理阶段执行,运行阶段执行。

2)引入内容不同

a.静态:<%@include file = "relativeURI%">,在jsp页面被转化成servlet之前和它融合到一起;

b.动态:<jsp:include page = "relativeURI" flush = "true">引入执行界面或servelt 所生成的应答文本.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

洋葱ycy

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值