Jsp 中 include 指令和 include 动作的区别
include指令与<jsp:include>动作的区别:
(1)include 指令只能引入遵循 JSP 格式的文件,被引入的文件与当前 JSP 文件需要共同合并后才能翻译成一个 Servlet 源文件,最终编译的文件只有一个;<jsp:include> 动作要引入的资源和当前 JSP 页面是两个彼此独立执行实体,即被引入的资源必须能够被 Web 容器独立执行,最终分别对两个文件进行编译。
(2)include 指令引入的资源是在编译时期包含的,包含的是源代码(静态包含);<jsp:include> 动作要引入的资源是在运行时才包含的,而且只包含运行结果(动态包含)。
(3)<jsp:include> 动作运行原理和 RequestDispatcher.include 方法类似,即被包含的页面不能改变响应状态码或者设置响应头;而 inlcude 指令则没有此限制。
注意:(使用<jsp:include>动作通常是包含那些经常改动的文件,因为被包含的文件改动不会影响到包含文件,因此不需要对包含文件进行重新编译)
(4)这里有一个简单的例子,对上面的第(1)(2)点证明
① data.jsp
- <%
- int num = 1;
- %>
②include 指令案例,include_command.jsp
- <%@ page language="java" contentType="text/html; charset=UTF-8"
- pageEncoding="UTF-8"%>
- <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
- <html>
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
- <title>Include 指令</title>
- </head>
- <body>
- <%@ include file="data1.jsp" %>
- <%
- out.print("num="+num);
- %>
- </body>
- </html>
这里可以正常输出
③<jsp:include> 动作案例, include_action.jsp
- <%@ page language="java" contentType="text/html; charset=UTF-8"
- pageEncoding="UTF-8"%>
- <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
- <html>
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
- <title>Include 动作</title>
- </head>
- <body>
- <jsp:include page="data1.jsp" flush="true"/>
- <%
- out.print("num="+num);
- %>
- </body>
- </html>
在 Eclipse 下出现小红叉,看来过不了编译。最终显示500,因为没有初始化 num 变量
(5)最后给一个案例
include.jsp
- <%@ page language= "java" contentType="text/html;charset=UTF-8" %>
- <html>
- <head>
- <meta charset="utf-8">
- <title>JSPinclude动作实例</title>
- </head>
- <body>
- <%@ include file = "Static.txt" %>
- <jsp:include page="Dyamic.jsp" flush="true"></jsp:include>
- </body>
- </html>
Static.txt
- <%@ page language= "java" contentType="text/html;charset=UTF-8" %>
- <form action="JSPIncludeActiveDemo.jsp" method=post>
- 用户名: <input type=text namename=name><br>
- 密码: <input type=password name=password><br>
- <input type=submit value=登录>
- </form>
Dyamic.jsp
- <%@ page language= "java" contentType="text/html;charset=UTF-8" %>
- <br>
- 用户名:<%=request.getParameter("name") %>
- <br>
- 密码:<%=request.getParameter("password") %>
- <br>
本文链接:https://liuyanzhao.com/5147.html
Jsp 中 include 指令和 include 动作的区别相关推荐
- JSP中的include指令和include动作的区别
我们都知道在jsp中include有两种形式,分别是Include指令:<%@ include file=""%>和include动作:<jsp:include ...
- 浅谈JSP中include指令与include动作标识的区别
JSP中主要包含三大指令,分别是page,include,taglib.本篇主要提及include指令. include指令使用格式:<%@ include file="文件的绝对路径 ...
- 【Head First Servlets and JSP】笔记24:include指令与include动作 param动作 foward动作...
include指令与include动作 1.样例代码 <%@ page contentType="text/html;charset=UTF-8" language=&quo ...
- JSP中get和post请求方式的区别及乱码解决方法
JSP中get和post请求方式的区别及乱码解决方法 get提交方式:默认method="get" 和 地址栏.超链接请求方式默认都属于get提交方式 form表单的method属 ...
- JSP中include指令和include动作的区别
include指令是编译阶段的指令,即include所包含的文件的内容是编译的时候插入到JSP文件中,JSP引擎在判断JSP页面未被修改,否则视为已被修改.由于被包含的文件是在编译时才插入的,因此如果 ...
- JSP include指令和include动作的区别
include指令 JSP可以通过include指令来包含其他文件.被包含的文件可以是JSP文件.HTML文件或文本文件.包含的文件就好像是该JSP文件的一部分,会被同时编译执行. Include指令 ...
- jsp page指令、include指令、include标签、forword标签、jsp注释方式
目录 三种指令类型 Page指令 列:session与errorPage的运用 include指令 列:静态包含 标签 Include标签 列:实现动态包含发送接收信息 fordword标签 列:js ...
- jsp篇 之 指令元素和动作元素
Jsp指令元素分类与书写格式: 书写格式: <%@ 指令类型 属性="值" .. %> 分类: [page include taglib]三种. 根据名字就能知道指 ...
- JSP中动态includ与静态includ的区别
JSP中动态INCLUDE与静态INCLUDE的区别? 动态INCLUDE用jsp:include动作实现 <jsp:include page="included.jsp" ...
- jsp中头的导入两种方式区别
1.<jsp:include page="top.jsp">先将top.jsp中的java脚本和jsp指令执行完毕以后再讲top.jsp页面加入面中 2.<%@ ...
最新文章
- 转发:Ajax动态画EChart图表
- windows下同时安装python2与python3
- inux CentOS 7 修改内核启动默认顺序
- 测试markdown的发布
- 阿里云部署SSL证书
- SqlServer的分割函数
- 数字信号处理----数字上变频和下变频都FPGA实现
- winform日历控件
- 服务器获取交换机端口状态,如何查找交换机端口对应的IP地址
- pe服务器注册表,在PE里如何修改系统注册表?U盘PE下修改本机注册表方法
- 白话电视:被移动设备抢走的光环,靠什么夺回来?
- 斗战神单机版正在连接服务器,斗战神单机版完整
- 控制算法简析1——PID和负反馈的数学原理
- 微软表示今年员工不要参与愚人节活动!怕玩笑过大得不偿失
- 【java】中文转拼音遇到的奇葩事件
- Python爬虫新手入门教学(一):爬取豆瓣电影排行信息
- DVWA文件包含漏洞
- 联想r720自带杜比驱动下载_暑假追剧补习神器,联想M10 PLUS评测
- 2021年新款创维E900v21e,非高安版-线刷刷机固件- 移动联通版
- mac os 录屏快捷键_如何才能高效的使用mac笔记本?mac笔记本高效使用教程
热门文章
- php-5.4 升级到 php7.2
- Java多线程之可见性与原子性——synchronized VS volatile
- schema约束和引入
- Zookeeper配置项说明
- (转载的)C#using的用法
- 讲师BLOG:http://linuxguest.blog.51cto.com/
- 在lua中调用DLL
- 计算机的操作系统的那个好,电脑操作系统哪个最好用?
- 究竟先操作缓存,还是数据库?
- 创建一个SpringBoot项目(IDEA版本,保姆级教程)