jsp中include指令和include动作区别

    xiaoxiao2021-03-25  84

    1、include指令

    语法: <%@include file="URL" %>

    2、include动作

    语法 <jsp:include page="URL" flush="true|false"> flush表示被包含的页面是否从缓冲区读取

    3、比较

    对于第三第四点可以验证如下: date.jsp

    <%@ page language="java" import="java.util.*,java.text.*" contentType="text/html; charset=utf-8"%> <% Date d=new Date(); SimpleDateFormat sdf=new SimpleDateFormat("yyyy年MM月dd日"); String s=sdf.format(d); out.println(s); %>

    Command.jsp

    <body> <h1>include指令</h1> <hr> <%@include file="date.jsp" %> </body>

    action.jsp

    <body> <h1>include动作</h1> <hr> <jsp:include page="date.jsp" flush="false"></jsp:include> </body>

    首先运行Command.jsp,在 Tomcat的work\Catalina\localhost\includeCommAction\org\apache\jsp目录下发现这些文件: 也就是说使用include指令时,最后只会生成一个servlet,打开command_jsp.java分析: 可以看到在文件中看到date.jsp的源代码,也就是说include指令包含的是“代码”

    再运行action.jsp,目录中文件如下: 发现多了两个class文件:date_jsp.class和action_jsp.class,也就是说使用include动作包含和被包含的页面会自己独立生成自己的servlet,再看看action_jsp.java内容有下面这句话: include动作并没有包含date.jsp的代码,是通过红线标注的这句话引入,包含的是“输出”

    转载请注明原文地址: https://ju.6miu.com/read-21698.html

    最新回复(0)