jsp中include

 举个例子,你现在的index.jsp,要包含一个文件abc.jsp.

首先,<%@include file="abc.jsp" %> 这个是include directive
如果,你选用这个include,那么意味着,abc.jsp里的所有Java,HTML代码原封不动的都被复制粘贴到当前的文件。和你手动复制粘贴效果是一样。这个的作用就是省了复制粘贴的功夫了。当访问index.jsp的时候,这个request(请求),是一次性完成。

其次,
<jsp:include page="abc.jsp" flush="true">
<jsp:param name="name" value="abc" />
</jsp:include>
这个是include action, 或叫include tag。当你使用这个的时候,意味着你访问abc.jsp,然后把abc.jsp输出的HTML(注意,和在IE里看到的HTML是一样)全部放到你include的位置。当访问index.jsp的时候,这个request(请求),是用户先请求index.jsp,然后服务器再自动请求abc.jsp,合成最终的index.jsp,然后response(回应)给客户端。

二者比较:
1. 二者一个是直接包含原代码,一个是包含请求出的HTML。
2. 用<jsp:include>的话,如果abc.jsp里有response.redirect("")或者response.addCookie("")等等关于response的操作,都回被忽视。也就是说用户不回被送到另一个页面。
但此时用<%@include>的话,abc.jsp里所有动response的操作都会正常运行。
3. 用<jsp:include>因为它是向abc.jsp发送一个请求,所以请求可包含<jsp:param>,就是parameter(参数)。
若用<%@include>,就不可以加参数。
4. 速度上,<%@include>会快一些,因为他只是处理一个请求。而<jsp:include>是处理两个请求,所以慢一点。
5. <jsp:include page="http://www.google.com/search?q=abc" />这样都可以,相当于把有HTML包含。
但在<%@include file="abc.jsp" />中,只可以包含你自己网站里的原始代码,也就是说abc.jsp必须存在,若不存在,会出现Compilation Error(编译错误)。
6. 使用上<%@include>比较常用,一般用于检测用户是否登陆,或者网站的LOGO,网站的一些静态不变的信息。
<jsp:include>一般用于发送一个请求,并接受所回应的HTML。可以加入Parameter(参数)。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值