静态include
含义,使用静态include可以将一个外部文件嵌入到当前JSP文件中,同时解析这个页面中的JSP语句。include指令即可包含静态的文本,也可以包含动态的JSP页面
语法:
<%@include file="url"%>
其中url既可以是静态页面,也可以是动态页面的绝对路径或相对路径,如果路径不对会提示语法错误,也可以使用控制器路径。
动态include
含义,使用动态include指令,可以将一个外部文件嵌入到当前JSP文件中,但不会导入被包含页面的编译指令,仅仅将被导入页面的body内容插入本页面。
语法:
<jsp:include page="url" flush="true|false">[<jsp:param name="paramName" value="paramValue"/>]
</jsp:include>
flush属性用于指定缓存是否转移到被导入文件中,如果为true,则包含在被导入文件中,如果为false,则包含在原文件中。
放括号中的<jsp:param name="paramName" value="paramValue"/>是在被导入页面中加入额外的请求参数。
区别
1.静态导入是将导入页面的代码完全融入,两个页面融合成一个整体Servlet;而动态include是在Servlet中使用include方法来引入被导入语页面的内容。
2.静态导入时页面的编译指令会起作用;而动态导入时被导入页面的编译指令则失去作用,只是插入被导入页面的body内容
3.最直观的区别就是动态包含可以增加额外的参数