对于java在开发中公共的部分最好封装到相应的类中,便于重复使用;
对于javascript也同样最好把公共部分封装到js文件中(如果jsp页面中存在大量的javascript脚本,最好把它放到js文件中);
对于jsp文件中如果需要采用公共的页面或jsp投中经常引用相同的内容(例如:每个页面都需要import大量相同的类库)可以把这些内容放到单独的jsp页面中,在每个页面中可以采用include指令将公共的jsp页面引入。
静态include主要是对静态页面的引入,不会检查所包含文件的变化
<% @ include file="include.html" %>
静态时不能传参数。
如以下是不正确的,会报错:找不到文件
<%@ include file="/controlCenter/jspCodeControl.jsp?jspCodeFrameId=1&jspFileWithPath=/moduleOne/moduleOneTemp.jsp'"%>
动态include主要是对动态页面的引入,它总是会检查所引入的页面的变化,如果所包含的资源在请求间发生变化
,则下一次请求包含<jsp:include>动作的jsp时,将包含资源的新内容。
另一方面,include指令在转换时一次性地将内容复制到jsp中,如果所包含的资源发生变化,则使用include指令的jsp将不能反应出新的内容,除非重新编译该jsp。
<jsp:include>动作包含的属性:
page:指定所包含资源的相对url路径,该资源必须时同一web应用程序的组成部分。
flush:指定在执行include动作后是否应刷新缓冲区,在jsp1.1中,该属性必须设置为真。
使用动态include动作时,根据jsp1.1规范,jsp容器允许判断通过include指令包含的资源是否发生变化。如果发生变化。则容器可以重新编译包含该资源的jsp,然而,该规范并没有提供向容器表明某个包含的资源发生变化的机制。
动态include的优点和不足:
优点:
1:引入和同步一个动态的页面,使jsp页面更具灵活性
2:能和不同页面之间进行信息的交互和快捷的实现方式。
3:改变了原始的所有页面编码都放在一个jsp上,使不同的功能分别写在不同页里,通过动态include方式引用到页面,更易于编码,更易于管理。
不足:
动态的引入时需要频繁的变化和页面信息的更新和交互,要占用大量的资源开销。降低页面的访问速度。如果在没必要动态引入的情况下,不要使用动态include
应该注意事项:
1:<jsp:include>动作的flush属性必须要定义,不定义会出现转换错误。而且设置的flush必须要为true
2:在<jsp:include>动作中指定的页面必须是同一web应用程序的一部分。如果引入的是非同一web应用的页面将导致请求时错误。
分享到:
相关推荐
2、静态include纯粹是把代码写在外面的一种共享方法,所有的变量都是可以和include它的主文件共享,两者高度紧密结合,不能有变量同名的冲突.而页面设置也可以借用主文件的. 静态INCLUDE 用法:<%@ include ...
动态INCLUDE 用jsp:include动作实现 <jsp include page=”included.jsp” flush>它总是会检查所含文件中的变化,适合用于包含动态页面,并且可以带参数。...1. 静态include的结果是把其他jsp引入
jsp中include指令静态导入和动态导入的区别详解.docx
CentOS7环境下编译的protobuf 3.1版本的静态库和动态库,里面包含protoc程序和include目录,经过测试程序 protoc --version 之后终端显示的是当前protobuf的版本号,说明编译的库能够正常使用
主要介绍了jsp中include指令静态导入和动态导入的区别,通过示例和图文讲解可以更好的看出他们的区别,需要的朋友可以参考下
压缩包内包含两个文件夹curl_静态库和curl_动态库,内容说明如下: curl_静态库下面: bin子目录包含curl.exe及动态库libcurl.dll include子目录包含头文件 lib子目录包含动态库的导入库文件libcurl.lib curl_...
JSP中include指令静态导入和动态导入的区别.pdf 学习资料 复习资料 教学资源
下面小编就为大家带来一篇静态页面实现 include 引入公用代码的示例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
Qt 5.15.1 vs2019 静态编译lib库和include头文件
什么是静态包含?什么是动态包含?两者的区别?的一个简单文档
我自己编译的,VS2017 32位 VTK-9.0.1t编译生成库,包含include、lib、bin、share四个文件夹,Debug和Release都有
默认编译是静态库,但考虑到 linux 上动态库使用较多,所以使用 -DBUILD_SHARED_LIBS=ON 参数编译为动态库。 在 centos 7 下使用 gcc 4.8.5 + cmake 3.16.9 编译,包含 bin, include, lib, lib64, share 五个目录,...
教你制作数据动态链接库 制作静态链接库 步骤一.制作一个完整的项目student(包含stu.h, stuapp.cpp,stumain.cpp )并运行。 stu.h #include using namespace std; #include class student { private: int id; ...
libiconv vc++ 6.0 实例代码 包含 动态dll 静态lib libiconv使用静态lib 工具->选项->目录 include加上include文件夹, lib加上lib 文件夹 项目里#include,并在工程->设置->link里 对象/模块里加入 libiconv.lib c/...
通常当应用程序中所有的页面的某些部分(例如标题、页脚和导航栏)都相同的时候,我们就可以考虑用include。具体在哪些时候用< %@ include file=” ”%>,哪些时候用< jsp:include page=” ” flush=...
QT 5.14.2 静态编译好的目录打包,包含所有的lib、bin、include、plugin目录等。 编译真的很麻烦,我打包好了,需要的拿去吧! 使用方法:把目录解压,在Qt vs tools里面配置一下路径就可以使用了 注: MTd方式,...