使用JSP include指令包含文件,JSP包含操作和使用JSP标记文件之间有什么区别?

使用JSP include指令包含文件,JSP包含操作和使用JSP标记文件之间有什么区别?

似乎有两种使用JSP进行模板化的方法。包含其中一个语句的文件


<%@ include file="foo.html" %>

<jsp:include page="foo.html" />

或使用JSP标记文件


// Save this as mytag.tag

<%@ tag description="Description" pageEncoding="UTF-8"%>

<html>

<head>

</head>

<body>

    <jsp:doBody/>

</body>

</html>

在另一个JSP页面中调用它


<%@ taglib prefix="t" tagdir="/WEB-INF/tags" %>


<t:mytag>

    <h1>Hello World</h1>

</t:mytag>

那么我应该使用哪种方法?现在一个被认为已被弃用,或者它们是否有效且涵盖不同的用例?


编辑


是否使用此标记文件与使用包含相同?


// Save this as product.tag

<%@ tag description="Product templage" pageEncoding="UTF-8"%>

<%@ tag import="com.myapp.Product" %>

<%@ attribute name="product" required="true" type="com.myapp.Product"%>


Product name: ${product.name} <br/>

Quantity: ${product.quantity} <br/>

并在另一个JSP上调用它


<%@ taglib prefix="t" tagdir="/WEB-INF/tags" %>


<t:product>

    <c:forEach items="${cart.products}" var="product">

        <t:product product="${product}"/>

    </c:forEach>

</t:product>

在我看来,这与使用include和传递参数非常相似。标签文件与包含相同吗?


红颜莎娜
浏览 1371回答 3
3回答

收到一只叮咚

主要优势体现<jsp:include />在<%@ include >是:<jsp:include />&nbsp;允许传递参数<jsp:include&nbsp;page="inclusion.jsp"> &nbsp;&nbsp;&nbsp;&nbsp;<jsp:param&nbsp;name="menu"&nbsp;value="objectValue"/></jsp:include>这是不可能的&nbsp;<%@include file="somefile.jsp" %>
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java