JSP的关键特征之一是,能够将来自于多个JSP页面中的内容集成到一个页面中。这通常用于完成包含页眉、页脚之类的工作。JSP支持两类包含:动态的和静态的。动态包含(通过<jsp:include>标签或JSTL<c:import>标签实现)在运行时访问资源。在这种情况下,控制被转发到被包含的JSP。从被包含的JSP返回的响应将与调用页面发回的响应进行合并。修改了动态被包含页后,它们将在所有调用页面中自动更新。
静态包含在JSP转换-即页面被转换成java代码并被编译时,集成资源。原页面的内容基本上是被拷贝到调用页面。对被包含页面的修改不能在调用页面时候被更新。因为它们已经有了自己的内容拷贝。它们必须是能够被编译的,以便它们在更新内容时能够被重新编译。
一.JSF支持两种包含。对动态包含,有两个要求:
1.被包含页面必须封装在<f:subview>核心标签中。这个标签可以位于被包含页面中,也可以围绕包含语句;
2.被包含页面的所有模板文本和非JSF标签必须位于JSF<f:vertatim>核心标签以内;
二.使用静态包含要更简单些。无特别限制-甚至并不非要使用<f:subview>标签。