<%@ include%…>和<jsp:include…>有啥区别呢?

听说后者优于前者,但它们俩具体是如何实现的呢?
请各位踊跃发表自己的看法,无论对错!!!

第1个回答  2008-01-09
<%@ include %>是编译时包含,相当于宏,编译时替代

<jsp:include>是运行时包含.相当于函数,运行时返回.
第2个回答  2008-01-09
前者是指令元素、后者是行为元素。

参考资料:http://hi.baidu.com/ctrl_f/blog/item/b8525e1e5ea71cf51ad57629.html

第3个回答  2008-01-09
<%@ include file=""%>指令在编写代码的时候一般放在最顶部,主要附加的是被重用的代码,这里所说的附加是指把源代码原封不动的附加过来,例如在jsp程序中使用这个指令的时候file里面的值(即要导入的文件)不能带多余的标签或是与当前jsp文件重复的东西。例如里面不要包含<html><body>这样的标签,因为是把源代码原封不动的附加过来,所以会与当前的jsp中的这样的标签重复导致出错。

而应用<jsp:include>标签导入一个重用文件的时候,这个文件是经过编译的,通俗点说就是附加这个要导入文件经过编译后的效果,所以可以含有与当前jsp程序中重复的内容,因为在附加过来之前就会被解析掉。本回答被提问者采纳
第4个回答  2008-01-09