jsp中@include和jsp:include的区别

1. jsp include指令

         <%@include%> 静态包含,将被包含资源的所有内容复制过来,一起编译运行。所以只生产一个class文件。

//用法
...
<body>
        <h2>上面的include1</h2>
        <%@include file="/include/include1.jsp" %>  //通过include指令导入网页上面部分
        <h2>中间的include</h2>
                我是中间的                                   //网页中间部分,变动内容
        <h2>下面的include2</h2>
        <%@include file="/include/include2.jsp" %> //通过include指令导入 网页下面部分
</body>
...

2.include动态标签

         <jsp:include>动态包含,将被包含资源的运行结果包含进来。所以会生产三个class文件

//用法
...
<body>
        <h2>上面的include1</h2>
        <jsp:include page="/actionInclude/include1.jsp"></jsp:include>
        <h2>中间的include</h2>
                中间的jsp内容(可以作为动态内容部分)
        <h2>下面的include2</h2>
        <jsp:include page="/actionInclude/include2.jsp"></jsp:include>
</body>
...

 

 

Summary:

对于静态包含,<%@include%>,中包含的文件,只是简单的嵌入到主文件中,就是在jsp页面转化成Servlet时才嵌入到主文件中,因为运行的结果是只生成了一个Servlet。

而对于动态包含,<jsp:incude>,如果被包含文件是动态的,那么就会生成三个Servlet,也就是被包含文件也要经过jsp引擎编译执行生成一个Servlet,三个Servlet通过request和reponse进行通信。如果被包含的文件是静态的,那么这种情况和<%@include>就很相似,只生成了一个Servlet,但是他们之间没有进行简单的嵌入,而依然是通过request和reponse进行的通信。

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值