黑马程序员技术交流社区
标题:
有关jsp的问题
[打印本页]
作者:
许阳
时间:
2011-9-30 20:53
标题:
有关jsp的问题
进行java web项目开发时如果当前一个jsp页面要包含其他的jsp页面的内容,有两种方式:
分别如下:
1. <%@ include file="要包含的jsp页面名称" %>;
2.<jsp : include page = "要包含的jsp页面名称">;
请问这两种方式有什么区别呢?
作者:
邢勇
时间:
2011-9-30 21:34
<%@ include file="要包含的jsp页面名称" %>
----静态包含
----include编译指令是在JSP程序的转换时期就将file属性所指定的程序内容嵌入,然后再编译执行;
----只生成一个class文件
----Include不能带参数
----同一个request对象
<jsp : include page = "要包含的jsp页面名称">
----动态包含
----而include指令在转换时期是不会被编译的,只有在客户端请求时期如果被执行到才会被动态的编译载入
----生成多个class文件
----<jsp:include>可以带参数
----不同的request对象,可以取得包含它的页面的参数,并添加了自己的参数
[
本帖最后由 邢勇 于 2011-09-30 21:37 编辑
]
作者:
匿名
时间:
2011-10-1 01:12
1<%@ include file="要包含的jsp页面名称" %>——这是jsp的指令标记。
它的作用是在jsp页面出现该指令的地方,静态加入一个文件,静态加入意思就是当前的jsp页面和插入的那个文件合并成了一个新的jsp页面,然后jsp叶面再将这个新的页面转译陈java文件。
2<jsp : include page = "要包含的jsp页面名称"> ——这个呢是jsp动作标记,其实从名字上就能看出他们的区别。
他是动态加载一个文件,与静态插入不同,当jsp引擎转译文件的时候,不把jsp页面中动作标记指令include所指的文件与原jsp文件合并成一个文件,而是在jsp运行时才被处理,
虽然他们都能实现代码的复用,但是处理方式和时间上时不同的,<%@ include file="要包含的jsp页面名称" %>优点是页面执行速度快,缺点是太依赖于当前jsp页面,
<jsp : include page = "要包含的jsp页面名称"> 优点是被处理的文件在逻辑上和语法上更独立,param子标记更加灵活处理文件,缺点是执行速度慢。
不知道你能看懂吗,写的条理性不太好!
作者:
匿名
时间:
2011-10-1 14:00
多谢两位马友耐心的解答,看过你们详细的解答之后,我简直是豁然开朗。多谢啦!:)
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2