jsp的include指令和include动作

1.include动作

  • include的jsp语法如下

<%@include file="relativeURL" %>

其中relativeURL是被包含的文件的标识

  • jsp与法描述

在jsp页面使用<%@include %>指令的时候,将会在JSP编程时在该指令出现的地方插入一个包含文字或代码的文件,这个包含的过程是静态的。静态的包含是指在编译时就能确定包含文件的内容,直接被插入到jsp文件中,形成一个jsp文件,包含的文件可以是HTML文件,文本文件或是jsp文件等。

  • jsp指令简例

主程序include.jsp

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<html>
  <head>
    <title>文件包含</title>
  </head>
  <body>
    <h1>文件包含</h1>
    <font color="green">
    欢迎你在<%@include file="date.jsp" %>访问这个页面
    </font>
  </body>
</html>


包含程序date.jsp

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>

 <%=new Date().toLocaleString()%>

该程序执行后的效果图


说明:

(1)如果某个包含文件被改变,包含此文件的jsp文件也要重新编译,否则不能反映包含文件的修改效果。

(2)file="relativeURL"这个包含文件的路径名一般来说是相对路径,必须在编译时就能确定,而不能用变量来代替。

(3)不可以在file所指定的文件后接收任何参数,如<%@include file="login.jsp?name=bar"%>是不允许的

2.include动作

  • <jsp:include>的语法

<jsp:include page="relativeURL|<%=expression%>" flush="true">

<jsp:include page="relativeURL|<%=expression%>" flush="true">

<jsp:param name="parameterName" value="paramterValue|<%=expression%>">

</jsp:include>


  • <jsp:include>语法描述

<jsp:include>允许包含动态文件和静态文件,这两种包含文件的结果是不同的。

如果文件是动态文件,那么这种包含文件会被jsp引擎单独编译执行,有<jsp:include>动作请求执行,并将传送回来一个相应输出到<jsp:include>动作所在的位置。当这个包含文件执行完毕以后,jsp引擎继续执行jsp文件余下的部分。

如果文件是静态文件,那么这种包含仅仅是把包含文件的内容加入到jsp文件中,与include指令包含静态文件的效果是一样的。

如果<jsp:include>动作包含的文件是动态文件,还可以用<jsp:include>子句传递参数名和参数值,并可以在一个<jsp:include>动作中多次使用<jsp:param>子句,传递多个参数给动态文件。

  • <jsp:include>属性及其用法

(1)page="relativeURL|<%=expression%>"参数为指向包含文件的相对路径,或者是等同于相对路径的表达式。relativeURL可以是指向当前jsp文件的绝对地址或相对地址,如果是绝对地址(以/开头的地址),其路径名由web服务器或应用服务器决定。

(2)flush="true"。该属性是可选的。如果设置为true,当页面输出使用缓冲区,那么在进行包含工作之前,先要刷新缓冲区。如果设置为false,则不会刷新缓冲区。该属性的默认值为false。

(3)<jsp:param>也是jsp的动作元素之一,用于传递参数。可以使用<jsp:param>将当前的jsp页面的一个或是多个参数传递给包含的或是跳转的jsp页面。改动作元素必须和<jsp:include>,<jsp:forward>,<jsp:plugin>动作一起使用,其语法结构如下:

<jsp:include page="相对的URL值" | "<%= 表达式%>" flush="true">

<jsp:param name="参数名1" value="参数值|<%=表达式%>" />

<jsp:param name="参数名2" value="参数值|<%=表达式%>" />

。。。。

</jsp:include>


<jsp:param>中,name指定参数名,value指定参数值,参数被发送到一个动态文件,参数可以是一个或是多个值。要传递多个参数,则可以在一个jsp文件中使用多个<jsp:param>将多个参数发送到一个动态文件中。如果用户选择使用<jsp:param>标签的功能,那么请求包含的目标文件就必须是一个动态文件。例如:

<jsp:include page="login.jsp" flush="true">

<jsp:param name="admin" value="admin" />

<jsp:param name="password" value="123" />

</jsp:include>


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值