宽为限 紧用功 工夫到 滞塞通
第一种:include指令
include指令:当JSP转换成Servlet时引入指定文件(指令元素),这是一种静态包含,它运行的时候不会单独编译成.class文件,它生成一个新的整体.class文件。
<%@ include file="head.jsp"%>
<%@ include file="body.jsp"%>
<%@ include file="tail.jsp"%>
注意:两个文件合成一起编译的话这个两个文件中不能包含相同名字的变量!
让我们来look一下:
第二种<jsp:include>
动作元素
<jsp:include>
动作元素:当JSP页面被请求时引入指定文件,它是动态包含一个外部文件,运行后代码时是分别编译成单独的.class文件。
元素允许你包含动态文件和静态,这两种包含文件的结果是不同的。如果文件仅是静态文件,那么这种包含仅仅是把包含文件的内容加到jsp文件中去,而如果这个文件动态的,那么这个被包含文件也会被Jsp编译器执行。
<jsp:include page="head.jsp"/>
<jsp:include page="body.jsp"/>
<jsp:include page="tail.jsp"/>
第二种方法可以很方便的用<jsp:param>
来向所包含页传递参数,方法如下:
<jsp:include page="head.jsp"/>
<jsp:include page="body.jsp">
<jsp:param name="uid" value="username"/>
<jsp:param name="pwd" value="password"/>
</jsp:include>
<jsp:include page="tail.jsp"/>
第二种方式因为是两个jsp文件单独编译的所以可以有相同的变量名。
温馨提示:
这个问题面试会问的呢!之前也百度过,额~ 过了一遍就忘记了。
这次做个练习项目又遇到这个小问题了,这次亲身经历要把它们的区别记下来咯 \(^o^)/YES!
站在巨人的肩膀上
本博文参考的文章
jsp包含文件的两种方法
JSP中包含外部文件的两种方式详解
jsp的include两种使用方法
列出Jsp中包含外部文件的方式,两者有何区别。