include指令与include标签的区别

本文详细介绍了JSP页面中的静态和动态包含指令的使用方法及其特点。包括include指令的基本语法、参数传递限制以及如何共享request对象等关键概念。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

include指令
用来包含其他文件的内容,被包含的文件可以是JSP文件或者HTML文件
include指令格式如下:
<%@ include file="目标组件的绝对路径或者相对路径" %>
通过例子来了解:
两个JSP文件
A.JSP
<%@ page language="java" contentType="text/html; charset=gb2312"
    pageEncoding="gb2312"%>
<%@include file="B.jsp" %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>A</title>
</head>
<body>
<br>这是A打印出的内容
</body>
</html>

B.jsp
<%@ page language="java" contentType="text/html; charset=gb2312"
    pageEncoding="gb2312"%>

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>B</title>
</head>
<body>
这是B打印出的内容
</body>
</html>

在A.jsp里有一句<%@include file="B.jsp" %>
当我们运行A.JSP时我们看到的打印结果为:
这是B打印出的内容
这是A打印出的内容
这说明B.JSP的内容包含到了A文件中

通过实验我们可以总结到以下几个特点
a.include指令属于静态包含,因为他在编译期间包含被包含的文件。
b.被包含的文件不能传递参数 如:

A.JSP
<%@ page language="java" contentType="text/html; charset=gb2312"
    pageEncoding="gb2312"%>
<%@include file="B.jsp?id=123" %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>A</title>
</head>
<body>
<br>这是A打印出的内容
</body>
</html>
c.两个页面访问的是同一个request对象
把两个文件修改为如下:
A.JSP
<%@ page language="java" contentType="text/html; charset=gb2312"
    pageEncoding="gb2312"%>
<%@include file="B.jsp" %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>A</title>
</head>
<body>
<br>这是A打印出的内容   A接收到的内容<%=request.getParameter("username") %>
</body>
</html>

B.JSP
<%@ page language="java" contentType="text/html; charset=gb2312"
    pageEncoding="gb2312"%>

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>B</title>
</head>
<body>
这是B打印出的内容  B接收到的内容<%=request.getParameter("username") %>
</body>
</html>

当在地址栏运行http://localhost:8080/project/A.jsp?username="yuewei"时
打印的结果为:
这是B打印出的内容 B接收到的内容"yuewei"
这是A打印出的内容 A接收到的内容"yuewei"

include标签
属于动态包含,在客户端请求时期如果被执行到才会被动态的编译载入
格式:
<jsp:include page="B.jsp" />

有以下几个特点:
a.<jsp:include>可以带参数
b.两个页面访问的不是同一个request对象,但可以取得包含它的页面的参数,并添加了自己的参数
c.编译执行后会产生单独的class文件。
对于include标签的特点验证 大家可以自己根据A.JSP与B.JSP修改来完成
通过实验来验证。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值