`

JSP相关技术详解七(Jsp基础语法-Jsp的三个编译指令)

阅读更多
  JSP指令会被JSP引擎转换为相应的Java代码,但这些Java代码并不直接产生任何可见输出,而是告诉JSP引擎如何处理JSP页面,或是如何生成Servlet类。



       JSP指令的语法格式如下:

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

常见的编译指令有三个:
page:该指令是针对当前页面的指令。
include:用于指定包含另一个页面。
taglib:用于定义和访问自定义标签。

一、page指令

      通常page指令位于JSP页面的顶端,在同一个JSP页面中可以有多个page指令,但不能重复指定同样的page指令。



      page 指令中包含的属性:

      1)import

      语法:<%@page import="package.class|package.*,..."%>

      说明:类似于在java中导入包一样,如果JSP页面中用到一些类,需要使用page指令的import属性导入使用的类。import设置当前JSP页面中要用到的Java类,这些java类可能是JDK的类,也可能是自定义的类。在JSP页面中也默认加入"java.lang.*;"、"java.servlet.*"、"java.servlet.jsp.*;"、"java.servlet.http.*;"。

   

     2)session

      语法:<%page session = "true|false" %>

      说明:定义当前页面是否参与HTTP会话。当设置为true时,可以获得隐含的名session的对象,为false时,则不可以获得该对象。默认为true。



     3)contentType

      语法:<%page contentType = "mimeType[;charset=characterSet]"%>

      说明:使用contentType属性可以设置JSP页面应答的MIME类型,默认值为"text/html"。另外可以定义JSP页面的字符编码方式,默认值为ISO-8859-1,即英文文本。如果在JSP中使用中文,则可以定义字符编码方式为GBK。



     4)isThreadSafe(慎用)

      语法:<%page isThreadSafe = "true|false" %>

      说明:定义当前页面是否支持线程安全。若为true,则该页面可能同时收到JSP引擎发送的多个请求;反之,JSP引擎会对收到的请求进行排除,当前页面在同一时刻只处理一个请求。默认为true。



      5)info

      语法:<%page info = "some text" %>

      说明:info属性允许开发人员包含有关页面的文本信息,可以通过Servlet.getServletInfo()方法得到该字符串。



      6)language

      语法:<%page language = "java" %>

      说明:language属性定义JSP使用的脚本语言,JSP容器允许使用其他语言进行JSP开发,但这些语言需要满足JSP规范中定义的规则。默认为java。



     7)extends

      语法:<%page extends = "jsp base class" %>

      说明:extends属性用来指定生成的JSP Servlet的基类。默认为扩展JspBase类。

    

     8)buffer

      语法:<%page buffer = "8k" %>

      说明:buffer属性用来指定响应的缓冲模型。默认值为8k。若设置为none,则表示该JSP页面不使用缓冲,所有响应输出孝将被PrintWriter直接写到ServletResponse中。



     9)autoFlush

      语法:<%page autoFlush = "true|flase" %>

      说明:当输出缓冲区即将溢出时,是否需要强制输出缓冲区的内容,设置为TRUE时为正常输出;如设置为FALSE,则会在buffer溢出时产生一个异常。



     10)errorPage

      语法:<%page errorPage = "true|flase" %>

      说明:errorPage用来设定当JSP页面出现异常时,所要转身的页面。如果没有设定,则JSP容器会用默认的当前页面来显示出错信息。例如,<%@page errorPage="/error/error_page.jsp"%>



     11)isErrorPage

      语法:<%page isErrorPage = "true|flase" %>

      说明:isErrorPage指定当前页面是否是错误处理页面。默认值为false。若设定为true,则JSP容器会在当前页面中生成一个exception对象。


二,include指令
使用include指令,可以将一个外部文件嵌入到当前JSP文件中,同时解析这个页面中的JSP语句(如果有的话)。这是个静态的include语句,它会把目标页面的其他编译指令也包含进来,但动态include则不会。

include既可以包含静态的文本,也可以包含动态的JSP页面。静态的include编译指令会将被包含的页面加入本页面,融合成一个页面。

include编译指令的语法:

<%@include file="relativeURLSpec"%>
如果被嵌入的文件经常需要改变,建议使用<jsp:include>操作指令,因为它是动态的include语句。



三,taglib
使用的较少
taglib指令
taglib指令允许用户使用标签库自定义新的标签,它的语法格式如下:
<% taglib uri="taglibURI" prefix="tabPrefix"%>

taglib指令中的uri属性用于根据标签的前缀对自定义的标签进行唯一的命名,其值可以食相对路径,就对路径或标签库描述文件。属性prefix制定了标签的前缀。

示例:

<%@ taglib uri="http://struts.apache.org/tags-bean" prefix="bean" %>
<%@ taglib uri="http://struts.apache.org/tags-html" prefix="html" %>
<%@ taglib uri="http://struts.apache.org/tags-logic" prefix="logic" %>
<%@ taglib uri="http://struts.apache.org/tags-tiles" prefix="tiles" %>
说明:
tagPrefix:
自定义标签的前缀名。如果前缀为bean,那么在页面上使用的此标签库中任何标签标签应写为<bean:XXX>,这里XXX是标签名。

URIToTagLibrary:
标签库本身的URI。可以是以“/”开始的绝对路径名,“/”解释为Web应用的根。或者是一个充作TLD符号名的URL。这种情况下,名字必须通过web.xml文件中的<tablig>入口被映射到实际的TLD。


分享到:
评论

相关推荐

    JSP常见的三个编译指令page、include、taglib

    jsp中include指令静态导入和动态导入的区别详解JSP编译指令page、include详解JSP中动态include与静态include的区别介绍JSP指令元素(page指令/include指令/taglib指令)复习整理基于jsp:included的使用与jsp:param乱码...

    JSP基础与案例开发详解2

    JSP基础与案例开发详解书本中的源代码,能够编译运行通过,由于太大这是下半部分,上以传。

    JSP中的编译指令和动作指令的两点区别

    您可能感兴趣的文章:JSP常见的三个编译指令page、include、taglibJSP编译指令page、include详解JSP指令元素(page指令/include指令/taglib指令)复习整理JSP语法Page指令JSP页面pageEncoding和contentType属性JSP ...

    JSP编译指令page、include详解

    主要介绍了JSP编译指令page、include,有需要的朋友可以参考一下

    java页面技术JSP详解

    2、在运行的时候JSP被容器自动翻译成为一个servlet 3、不需要在配置文件里面配置(当然配置也可以) 4、文件被修改之后,自动被重新编译 5、Servlet生成静态页面比较麻烦,适合做Control层,JSP生成页面比较容易,...

    JSP基础与案例开发详解上

    JSP基础与案例开发详解书本中的源代码,能够编译运行,供大家学习参考。由于太大分两次传的,想要的仔细找找

    Java数据库技术详解 DOC简版

    第5章 JDBC技术基础 5.1 JDBC概述 5.2 JDBC API 5.3 JDBC操作数据库 5.4 本章小结 第6章 JDBC的高级特性 6.1 PreparedStatement预编译对象 6.2 CallableStatement存储过程对象 6.3 BatchedUpdate...

    JSP静态导入与动态导入使用详解

    JSP指令标记为JSP页面转译提供整个页面的相关信息。  include指令用于在JSP页面静态插入一个文件,被插入的文件可以是JSP页面、HTML页面、文本文件或一段Java代码。使用了include指令的JSP页面在转换成Java文件时,...

    JSTL详解--Core 标签库介绍

    例如,可以使用三个 scriptlet 实现条件内容,清单 1 中着重显示了这三个 scriptlet。但是,因为脚本编制元素依赖于在页面中嵌入程序源代码(通常是 Java 代码),所以对于使用这些脚本编制元素的 JSP 页面,其软件...

    jsp中include指令静态导入和动态导入的区别详解

    静态导入指的是,将一个外部文件嵌入到当前JSP文件中,同时解析这个页面的JSP语句,它会把目标页面的其他编译指令也包含进来。include的静态导入指令使用语法: 代码如下:&lt;&#37;@include file=”relativeURLSpec...

    基于JSP编译器基本语法的使用详解

    JSP编译器指引与指令元件有五种型态.在JSP1.0之后,大部分的JSP是包含在以作为结束的单一标签里.新的JSP1.1规格已经发表了,它同时也与XML相容. 五种JSP的编译器指引如下所示: 1.编译器指引 2.预定义 3.运算式 4....

    jsp include引用非本级目录网页实现代码

    采用相对路径 假设当前目录名为a, 目标文件夹为b (1)如果b是a的上级目录, 代码如下:&lt...jsp中include指令静态导入和动态导入的区别详解JSP编译指令page、include详解JSP中动态include与静态include的区别介绍JSP指

    搞定J2EE:STRUTS+SPRING+HIBERNATE整合详解与典型案例 (1)

    一共四个,其中pdf 三个包,源码一个包 第一章 J2EE快速入门 1.1 J2EE概述 1.1.1 J2EE的来源 1.1.2 J2EE整体框架 1.1.3 从J2EE到JavaEE 1.2 J2EE组件 1.2.1 客户端组件 1.2.2 Web组件 1.2.3 业务逻辑组件 1.3 J2EE...

    搞定J2EE:STRUTS+SPRING+HIBERNATE整合详解与典型案例 (2)

    一共四个,其中pdf 三个包,源码一个包 第一章 J2EE快速入门 1.1 J2EE概述 1.1.1 J2EE的来源 1.1.2 J2EE整体框架 1.1.3 从J2EE到JavaEE 1.2 J2EE组件 1.2.1 客户端组件 1.2.2 Web组件 1.2.3 业务逻辑组件 1.3 J2EE...

    jsp最详细教程 最容易入门

    第1 章 JSP 简介................................................................................10 1.1 什么是JSP........................................10 1.2 JSP 页面.....................................

    jsp 自动编译机制详细介绍

    主要介绍了 Jasper的自动检测实现的机制比较简单,依靠某后台线程不断检测JSP文件与编译后的class文件的最后修改时间是否相同,若相同则认为没有改动,但倘若不同则需要重新编译,需要的朋友可以参考下

    《程序天下:J2EE整合详解与典型案例》光盘源码

    第三篇 J2EE开发工具整合技术 第十章 使用Spring快速实现Web开发 10.1 Spring介绍 10.1.1 Spring简介 10.1.2 下载Spring 10.1.3 配置Spring 10.2 Spring核心思想 10.2.1 反向控制(IoC) 10.2.2 依赖注入(DI) 10.3...

    搞定J2EE:STRUTS+SPRING+HIBERNATE整合详解与典型案例 (3)

    一共四个,其中pdf 三个包,源码一个包 第一章 J2EE快速入门 1.1 J2EE概述 1.1.1 J2EE的来源 1.1.2 J2EE整体框架 1.1.3 从J2EE到JavaEE 1.2 J2EE组件 1.2.1 客户端组件 1.2.2 Web组件 1.2.3 业务逻辑组件 1.3 J2EE...

    JSP 从配置文件获取参数详解

    这一节将介绍 ServletContext 和 ServletConfig 这两个接口。 通过这两个接口,我们可以在web.xml中设置一些参数,如数据库地址、用户名密码等,供 Servlet 使用, 这样每次参数值变动时,不用重新编译Servlet了。 ...

    jsp 生命周期详细介绍

    主要介绍了jsp 生命周期详细介绍的相关资料,JSP有编译阶段,初始化阶段,执行阶段,销毁阶段,需要的朋友可以参考下

Global site tag (gtag.js) - Google Analytics