一、前言

身为一名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="" />动作大家可以自己写个例子试看看。

2019/7/18 --1.<%@ include file=""%>与<jsp:include page=""/>两种方式的作用的更多相关文章

  1. <%@ include file=""%>与<jsp:include page=""/>两种方式的作用

    一.前言 身为一名coder有太多太多的知识点要去学,太多太多的东西要去记.往往一些小细节也就难免疏忽,但悲催的是多数困恼你的bug就是因为这些微不足道的知识点.我们又不是机器人,怎么可能什么都记得了 ...

  2. <%@ include file=""%>与<jsp:include page=""/>两种方式的作用以及传值

      一:使用    1.include指令: 1 <%@include file="文件的绝对路径或者相对路径"%> file属性是必填的(绝对或相对路径),但它不支持 ...

  3. JSP基本语法--包含指令<%@include file="路径"%> <jsp:include page>

    包含指令,真正改变的地方只有具体内容处: 方法1: 在每个jsp页面(HTML)都包含工具栏,头部信息,尾部信息,具体内容 方法2: 将工具栏,头部信息,尾部信息都分成各个独立的文件,使用的时候直接导 ...

  4. jsp 中 include指令 用法, <%@ include file="..."%> 和 <jsp:include page="..." flush="true" />的区别?

    原文链接https://blog.csdn.net/u012187452/article/details/51779052 1. 什么是jsp 文件? 个人理解.  jsp 是一个容器,可以将我们编写 ...

  5. <%@ include file="">和<jsp:include file="">区别

    <%@include file="a.jsp"%>是在编译时加入,所谓静态,就是在编译的时候将jsp的代码加入进来再编译,之后运行. <jsp:include p ...

  6. <%@ include file=""%>与<jsp:include page=""/>区别(转)

    http://www.iteye.com/topic/312500/ 我们都知道在jsp中include有两种形式,分别是Include指令:<%@ include file="&qu ...

  7. include file与jsp:include 的区别

    <%include   file="a.jsp"%>静态包含,先加入再编译,就是在编译的时候将a.jsp的代码加入进来在编译,只会生成一个servlet文件,而且不同a ...

  8. JSP连接数据库的两种方式:Jdbc-Odbc桥和Jdbc直连(转)

    学JSP的同学都要知道怎么连数据库,网上的示例各有各的做法,弄得都不知道用谁的好.其实方法千变万化,本质上就两种:Jdbc-Odbc桥和Jdbc直连. 下面先以MySQL为例说说这两种方式各是怎么连的 ...

  9. 将图片base64格式转换为file对象并读取(两种方式读取)

    两种方式读取,一种URL.createObjectURL,另一种fileReader   var base64 = ` data:image/jpeg;base64,/9j/4AAQSkZJRgABA ...

随机推荐

  1. gdocrimg04从库无法重启问题

    1.查看error.logVersion: '5.6.25-log'  socket: '/tmp/mysqld.3324_gdocrimg04.sock'  port: 3324  Source d ...

  2. Centos 7 替换镜像源

    1 备份原始源 [root@localhost ~]# mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.b ...

  3. Docker2 docker commit方法镜像制作

    一.前期准备 1.下载一个centos镜像,进入容器,安装wget docker pull centos docker run -it centos bash [root@web1 ~]# docke ...

  4. 私有属性和私有方法l

    class Woman: def __init__(self, name): self.name=name self.__age=18 def __secret(self): print(" ...

  5. isolate 通信

    main.dart import 'package:flutter/material.dart'; import 'package:flutter_isolate/flutter_isolate.da ...

  6. 【转载】C#中List集合First和FirstOrDefault方法有何不同

    在C#的List集合中查找一个符合条件的元素,一般我们会用First方法或者FirstOrDefault方法来返回第一个符合条件的对象,First方法和FirstOrDefault的调用都是使用Lam ...

  7. css盒模型。边框和内外边距

    css盒模型: 外边距 边框 内填充 内容 盒模型分为两种: 标准盒模型: 怪异盒模型(IE盒模型): 边框:border border: 10px solid blue;表示设置10像素蓝色实线条的 ...

  8. PostgreSQL SERIAL创建自增列

    PostgreSQL SERIAL创建自增列 本文我们介绍PostgreSQL SERIAL,并展示如何使用serial类型创建表自增列. PostgreSQL SERIAL伪类型 PostgreSQ ...

  9. day53-python之会话

    from django.shortcuts import render,redirect # Create your views here. import datetime def login(req ...

  10. stm32 USART_IT_IDLE中断 一帧数据

    USART_IT_IDLE中断,是串口收到一帧数据后,发生的中断.也可以叫做一包数据 USART_IT_IDLE和USART_IT_RXNE区别 当接收到1个字节,会产生USART_IT_RXNE中断 ...