1. include 编译指令【静态指令】<%@include file="xxx"%>
2. include 动作指令【动态指令】<jsp:include page="xxx"/>
include.jsp 主页面
采用了include动作指令载入了【otherlet.jsp】
采用了include编译之类载入了【scriptlet.jsp】
下面是include的servlet改动
白线部分 明显看出<jsp:include>方式采用了动态的加载 apache中的一个JspRuntimeLibrary加载【后台加载】
【比如某些网站的置顶新闻 因为新闻每天都再变 这些可能是用该方法实现】
红框部分 可以看出是<%include file%>方式采用了静态的加载 这里直接是把加载的otherlet.jsp中的内容 【合并到了这个页面中】
【比如 常见的"三排布局" 页眉 页脚 导航栏 之类的 很可能由这个实现】
如果在【otherlet.jsp】中加入 <%@page contentType="text/html;charset=gb2312%>
报错原因 <@include file>会把所有编译指令一起包含进去 因此早晨了contentType 值的冲突
而<jsp:include>则不会
本文详细解析了JSP中静态include指令和动态include动作指令的区别,包括加载方式、应用场景及注意事项,并通过实例展示了如何在主页面中利用include动作指令加载其他页面的内容,实现了动态加载和静态合并的不同效果。
2377

被折叠的 条评论
为什么被折叠?



