JSP有3个编译指令,是通知JSP引擎的消息,它不直接生成输出。编译指令都有默认值,无须为每个指令设置值。

  常见的编译指令有如下三个:

  •   page:针对当前页面的指令。
  •   include:指定包含另一个页面。
  •   taglib:定义和访问自定义标签。

  使用编译指令的语法格式如下:

  <%@ 编译指令名 属性="属性值" ...%>

page指令

  page指令通常位于JSP页面的顶端,一个JSP页面可以使用多条page指令,语法格式如下:

  <%@page

    [language="Java"] [extends="package.class"]

    [import="package.class|package.*,...*]

    [session="true | false "] [buffer="none | 8KB | size Kb"]

    [autoFlush="true | false"] [info="text"] [errorPage="relativeURL"]

    [contentType="mimeType[;charset=characterSet]"|"text/html;charSet=ISO-8859-1"]

    [pageEncoding="ISO-8859-1"][isErrorPage="true | false"]

  %>

  page指令各属性的意义:

  •   language:声明但钱JSP压面使用的脚本语言的种类,通常是Java,默认值也是Java,通常无需设置。
  •   extends:指定JSP页面编译所产生的Java类所集成的父类,或所实现的接口。
  •   import:用来导入包。下面几个包是默认自动导入的,不需要显示导入:java.lang.*、javax.servlet.*、javax.servlet.jsp.*、javax.servlet.http.*。
  •   session:设定这个JSP页面是否需要HTTP Session。
  •   buffer:指定输出缓冲区的大小。输出缓冲区的JSP内部对象为out,用于缓存JSP页面对客户端浏览器的输出,默认值为8KB,可以设置为none,也可以设置为其他的值,单位为Kb。
  •   autoFlush:当输出缓冲区即将溢出时,是否需要强制输出缓冲区的内容。true时为正常输出,false时则会在buffer溢出时产生一个异常。
  •   info:设置该JSP程序的信息,可以看作其说明,通过Servlet.getServletInfo()方法可以获取该值。如果在JSP页面中,可直接调用getServletInfo()方法获取该值。
  •   errorPage:指定错误处理页面。如果本页面产生了异常或者错误,而该JSP页面没有对应的处理代码,则会自动调用该属性所指定的JSP页面,因为JSP内建了异常机制支持。Internet Explorer需要取消设置"显示友好HTTP错误信息“,才支持该属性。
  •   isErrrorPage:设置JSP页面是否为错误处理程序。如果true,则无需指定errorPage属性。
  •   contentType:用于设定生成网页的文件格式和编码字符集,即MIME类型和页面字符集类型,默认MIME类型是text/html;默认的字符集类型是ISO-8859-1。
  •   pageEncoding:指定生成网页的编码字符集。

include指令

  这是个静态的include语句,它把目标页面的其他编译指令也包含进来,但动态include不会。include既可以包含静态的文本,也可以包含动态的JSP页面。静态的include编译指令会将被包含的页面加入本页面,融合成一个页面,因此被包含页面甚至不需要是一个完整的页面。

  语法:

  <%@include file=”relativeURLSpec"%>

  如果被嵌入的文件经常需要改变,应使用<jsp:include>操作指令,因为它是动态的include语句。

JSP的编译指令的更多相关文章

  1. JSP中编译指令include与动作指令include的区别

    include指令是编译阶段的指令,即include所包含的文件的内容是编译的时候插入到JSP文件中,JSP引擎在判断JSP页面未被修改, 否则视为已被修改.由于被包含的文件是在编译时才插入的,因此如 ...

  2. jsp 的 3 个编译指令

    JSP 的编译指令是通知 JSP 引擎的消息,它不直接生成输出. 常见的编译指令有如下三个: 1.page:该指令是针对当前页面的指令 2.include:用于指定包含另一个页面 3.taglib:用 ...

  3. jsp笔记2(编译指令与动作指令)

    一.jsp的编译指令是通知jsp引擎的消息,不会生成输出. jsp的3个编译指令: page:针对当前页面的指令   include:包含另一个页面的指令   taglib:用于定义和访问自定义标签 ...

  4. 【JSP】JSP基础学习记录(一)—— 基础介绍以及3个编译指令

    序: 从实现到现在一直是以.net为主,但偶尔也会参与一些其他语言的项目.最近需要对一个Java Web项目进行二次开发,一直没学习过JSP所以买了几本书自学试试.参考资料为<轻量级Java E ...

  5. 02.JSP的3个编译指令

    本章介绍JSP的3个编译指令,在JSP中常见的编译指令有如下3个:         1.page:用于针对当前页面的指令.         2.include:用于指定包含另一个页面.         ...

  6. jsp的常用指令有哪些(编译指令/动作指令整理)

    jsp的常用指令有哪些(编译指令/动作指令整理) JSP动作指令 JSP - JSP中的脚本.指令.动作和注释

  7. 二、JSP的3个编译指令,7个动作指令,9个内置对象

    JSP 3个编译指令 1)  page指令(基本不需要用到,使用默认即可) 主要属性: 1.Language:指定脚本所采用的语言类型,现在只支持java 2.Extends:定义当前jsp产生的se ...

  8. jsp笔记,包括编译指令和动作指令,九大对象等

    jsp基础知识 不包括HTTP协议,只有jsp的基础知识,包括表达式,代码片段,jsp九大对象等. 编译指令是在jsp被转换成selvet时,使用的. 而动作指令,是在每次客户端请求时动态执行.

  9. JavaWeb从0开始学(二)-----JSP基本语法与编译指令

    在上一节中我们学习了如何搭建一个简单的Web应用,并且已经知晓了一个JSP页面主要由静态的HTML内容和动态的Java脚本共同组成.JSP的基本语法共有JSP注释.JSP声明.输出JSP表达式与JSP ...

随机推荐

  1. ENVI 5.0 Beta 体验——影像数据的显示

    ENVI 5.0 Beta采用了全新的软件界面,数据的显示和操作跟以往的三视窗方式有很大的区别,下面一块体验一下. 对于栅格数据的显示方面,5.0有了非常大的改进,采用的全新的金字塔计算方法,在第一次 ...

  2. 织梦dedecms简略标题调用标签用法指南

    我们在使用织梦DEDECMS建站过程中,为了使调用的文章标题简短且相对完整(原文标题太长),只好使用了调用简略标题这个方法,使标题显示为简短标题,指向标题时显示完整的标题.并获得文章静态地址链接 下面 ...

  3. spring+hibernate--直接修改数据库,再通过hibernate查询数据不变

    这个问题已经很多天了,一直没有时间解决,不过还好是自己的项目,没什么影响. 刚好今天没事,想好好解决一下这个问题. hibernate主要配置如下: <property name="h ...

  4. 【linux】 静态库编译

    文件如下: root@ubuntu:/home/test# ll total drwxr-xr-x root root Sep : ./ drwxr-xr-x root root Sep : ../ ...

  5. c++ builder TreeView控件节点遍历

    void __fastcall TForm1::GetRootNodes(TTreeView *DestTreeView)//得到所有根节点 { TTreeNode *vNode = NULL; vN ...

  6. poj1006_Biorhythms

    英语真差劲啊,看题目没看明白,无奈重新开始手抄题目,突然发现一句话 “For each cycle,you will be given the number of days form the begi ...

  7. 通过Migration在EF6中用多个DbContext

    通过Migration在EF6中用多个DbContext EF EF6 C# Migration 通过Migration在EF6中用多个DbContext 前言 实现目标 设置多数据上下文 更新数据脚 ...

  8. JS创建对象的方式

    1.采用直接量创建方式:系统会使用new方式自动创建对象 var o = {x:1,y:2,z:2}; 2.采用new关键字创建对象:采用构造函数创建对象 var o = new Object();/ ...

  9. 根据Ip获取城市帮助类

    思路构建 1.先通过本地的测IP地址库进行匹配 2.如果本地IP地址库存在此IP的城市信息,就直接返回,调用速度也快 3.如果本地没有对应的IP城市信息,必须通过调用网络的IP查询的API了,这里我使 ...

  10. ES6还是ES2015?

    遇到了一个困惑   原来称作es6的现在突然变成es2015 了 原因是这个事ecma-262 的第六次变更,所有以前按照惯例称为es6. 但是为了更小版本频繁发布,现在 标准叫法是:  esmasc ...