<%@ include file=""%>与<jsp:include page=""/>两种方式的作用
一、前言
身为一名coder有太多太多的知识点要去学,太多太多的东西要去记。往往一些小细节也就难免疏忽,但悲催的是多数困恼你的bug就是因为这些微不足道的知识点。我们又不是机器人,怎么可能什么都记得了呢。更多的是遇到问题->解决问题->成为经验,这种提升模式。其实多去交流,多去分享,在你还未遇到问题之前就能预先知晓解决方法,或许提升的更快。
二、JSP中include的两种方法
1.include指令:
|
1
|
<%@include file="文件的绝对路径或者相对路径"%> |
file属性是必填的(绝对或相对路径),但它不支持任何的表达式,也不允许通过?挂参方式来传递参数。
2.include动作:
|
1
2
3
|
<jsp:include page="被包含文件的路径" flush="true/false"> <jsp:param name="参数名称" value="参数值"/></jsp:inclue> |
page属性是必填的(绝对或相对路径),但它及支持表达式也可传递参数。flush属性为缓冲区满时,清空缓冲区。
三、两者的区别
1.执行时间上的区别:
<%@ include file=”relativeURI”%> 是在翻译阶段执行(将JSP页面转换成servlet的阶段)。
<jsp:include page=”relativeURI” flush=”true” /> 在请求处理阶段执行。
2.引入内容的方式区别:
<%@ include file=”relativeURI”%>适用于引入静态文本,也可以这么理解:它是纯粹的把部分代码写到了另一页面(或者说是共享),而那另一页面中不能有相同的变量名,但可以借用主页面的内容。
<jsp:include page=”relativeURI” flush=”true” />引入执行页面或servlet所生成的应答文本。
如图理解:


四、例子解释
在index.jsp页面中引入test.jsp页面

路径中出现表达式,则页面报500错误……所以我们要把<%=basePath%>去掉,替换成无包含表达式相对或绝对路径地址。

变量出现重名冲突,则页面同样报500错误……我们把那些变量都去掉就剩下<div>我是head</div>再测试,得到的结果是:

这次没报错了,但是汉字出现乱码了!所以test.jsp页面中,<%@ page contentType="text/html;charset=UTF-8" language="java" %>这句我们还是要保留下来的。
以上我只是简单的讲解了下<%@ include file="" %>的例子中一些常遇到的错误,因为我们平时也比较多用此指令。至于<jsp:include page="" />动作大家可以自己写个例子试看看。
五、结语
再小再简单的问题都不能忽视,栽过跟头的人都深有体会。坚持是一种精神,分享是一种快乐。
<%@ include file=""%>与<jsp:include page=""/>两种方式的作用的更多相关文章
- 2019/7/18 --1.<%@ include file=""%>与<jsp:include page=""/>两种方式的作用
一.前言 身为一名coder有太多太多的知识点要去学,太多太多的东西要去记.往往一些小细节也就难免疏忽,但悲催的是多数困恼你的bug就是因为这些微不足道的知识点.我们又不是机器人,怎么可能什么都记得了 ...
- <%@ include file=""%>与<jsp:include page=""/>两种方式的作用以及传值
一:使用 1.include指令: 1 <%@include file="文件的绝对路径或者相对路径"%> file属性是必填的(绝对或相对路径),但它不支持 ...
- JSP基本语法--包含指令<%@include file="路径"%> <jsp:include page>
包含指令,真正改变的地方只有具体内容处: 方法1: 在每个jsp页面(HTML)都包含工具栏,头部信息,尾部信息,具体内容 方法2: 将工具栏,头部信息,尾部信息都分成各个独立的文件,使用的时候直接导 ...
- jsp 中 include指令 用法, <%@ include file="..."%> 和 <jsp:include page="..." flush="true" />的区别?
原文链接https://blog.csdn.net/u012187452/article/details/51779052 1. 什么是jsp 文件? 个人理解. jsp 是一个容器,可以将我们编写 ...
- <%@ include file=""%>与<jsp:include page=""/>区别(转)
http://www.iteye.com/topic/312500/ 我们都知道在jsp中include有两种形式,分别是Include指令:<%@ include file="&qu ...
- <%@ include file="">和<jsp:include file="">区别
<%@include file="a.jsp"%>是在编译时加入,所谓静态,就是在编译的时候将jsp的代码加入进来再编译,之后运行. <jsp:include p ...
- include file与jsp:include 的区别
<%include file="a.jsp"%>静态包含,先加入再编译,就是在编译的时候将a.jsp的代码加入进来在编译,只会生成一个servlet文件,而且不同a ...
- JSP连接数据库的两种方式:Jdbc-Odbc桥和Jdbc直连(转)
学JSP的同学都要知道怎么连数据库,网上的示例各有各的做法,弄得都不知道用谁的好.其实方法千变万化,本质上就两种:Jdbc-Odbc桥和Jdbc直连. 下面先以MySQL为例说说这两种方式各是怎么连的 ...
- 将图片base64格式转换为file对象并读取(两种方式读取)
两种方式读取,一种URL.createObjectURL,另一种fileReader var base64 = ` data:image/jpeg;base64,/9j/4AAQSkZJRgABA ...
随机推荐
- ABAP制作密码输入框
[转自 http://blog.csdn.net/saphome/article/details/6956911] 这几天做一个系统维护的程序,需要用户输入用户名和密码登录.可怎样实现输入密码显示星号 ...
- Spring AOP 学习例子
http://outofmemory.cn/code-snippet/3762/Spring-AOP-learn-example 工作忙,时间紧,不过事情再多,学习是必须的.记得以前的部门老大 ...
- 【整理学习Hadoop】Hadoop学习基础之一:服务器集群技术
服务器集群就是指将很多服务器集中起来一起进行同一种服务,在客户端看来就像是只有一个服务器.集群可以利用多个计算机进行并行计算从而获得很高的计算速度,也可以用多个计算机做备份,从而使得任 ...
- Linux基础系列:常用命令(8)_shell script
一.什么是shell script 将OS命令堆积到可执行的文件里,由上至下的顺序执行文本里的OS命令 就是脚本了. 再加上些智能(条件/流控)控制,就变成了智能化脚本了 二.变量命名规则 以字母或下 ...
- Data Structure Binary Tree: Print ancestors of a given binary tree node without recursion
http://www.geeksforgeeks.org/print-ancestors-of-a-given-binary-tree-node-without-recursion/ #include ...
- zabbix实现mysql数据库的监控(四)
前面介绍的内容都是用第三方开发好的插件进行mysql监控的,可能有些我们关心的监控内容并不在其中,这时一种常用的方法就是定义我们自己的脚本并将它整合到zabbix中,从而在原有监控的基础上进行有力的补 ...
- 第五篇、css补充二
一.内容概要 1.图标 2.目录规划 3.a标签中的img标签在浏览器中的适应性 4.后台管理系统设置 5.边缘提示框 6.登录页面图标 7.静态对话框 8.加减框 补充知识: line-height ...
- 适用grunt的注意点
0.使用grunt可以为前端开发省去很多工作量,与git版本控制器配合起来不要太完美,一般也都是这么用的: 1.先安装node.js,下载软件安装就行了,一般自带npm管理器; 2.通过npm安装gr ...
- mono上运行程序常见问题
1. System.BadImageFormatException: Invalid method header local vars signature token 0x 65d5b2File na ...
- nginx location 语法
location 语法location 有”定位”的意思, 根据Uri来进行不同的定位.在虚拟主机的配置中,是必不可少的,location可以把网站的不同部分,定位到不同的处理方式上.比如, 碰到.p ...