----------------siwuxie095

 
 

 
 

 
 

 
 

 
 

 
 

 
 

编译指令是通知 JSP 引擎的消息,其作用是设置 JSP 程序的属性,

以及由
JSP 生成的 Servlet 的属性,并不直接生成输出

 
 

如:指定
JSP 程序所使用的脚本语言、文件编码等

 
 

 
 

编译指令都有默认值,如果没有设置,则采用默认值,开发人员无需为每个指令设置值

 
 

 
 

JSP 常用的编译指令有 3 个:page、include、taglib

 
 

 
 

 
 

page 编译指令

 
 

page 编译指令主要用于定义当前 JSP 程序的全局属性

 
 

如:JSP 程序所使用的脚本语言类型,需要导入的 Java 包的列表

 
 

 
 

page 编译指令的格式:<%@ page %>

 
 

 
 

一般情况下,page 编译指令位于页面的最上方,同一页面可以有多个 page 编译指令

 
 

 
 

Eclipse 默认给 JSP 文件添加的 page 编译指令

 
 

 
 

 
 

language 属性

 
 

用于声明当前 JSP 程序的所使用的脚本语言的种类,默认是 java

 
 

 
 

 
 

contentType 属性

 
 

(1)设置 MIME 的类型

 
 

MIME 即 Multipurpose Internet Mail Extensions,多用途互联网邮件扩展

 
 

MIME 最早应用于电子邮件系统,后来也应用于浏览器,服务器会将其发送的

多媒体数据类型告诉浏览器,而通知的手段即
MIME

 
 

这里
JSP 程序的 MIME 类型是 text/html,说明发送给浏览器的是网页数据

 
 

 
 

(2)设置生成网页的编码

 
 

charset 指定服务器生成网页的编码,这里是 UTF-8

 
 

如果该属性没有指定,默认是 ISO8859-1

 
 

 
 

 
 

pageEncoding 属性

 
 

用于设置 JSP 程序本身的编码

 
 

 
 

 
 

page 编译指令的其他常用属性:

 
 

import 属性

 
 

该属性用来导入 Java 类,如果没有通过 import 属性导入 Java 类,

那么在
JSP 中使用这些类时必须使用完全限定名,即包名

 
 

如:

 
 

 
 

 
 

 
 

可通过一个
import 属性导入多个 Java 类,中间使用逗号隔开

 
 

如:

 
 

 
 

 
 


全部放在一起

 
 

 
 

 
 


分开

 
 

 
 

 
 

导入相应的
Java 类后,可以在
JSP 程序段中使用

 
 

 
 

 
 

errorPage 属性 和 isErrorPage 属性

 
 

errorPage,用于指定错误处理页面,如果当前的 JSP 程序产生了

异常

错误,而该
JSP 程序没有对应的处理代码,则 JSP 引擎会

自动调用
errorPage 所指定的 JSP 程序(错误处理程序)

 
 

isErrorPage 用于设置当前 JSP 程序是否为错误处理程序

 
 

如:

 
 

设定
get_error.jsp 的 errorPage 属性,在 JSP 程序段中人为制造一个错误

 
 

 
 

 
 

 
 

设定
handle_error.jsp 的 isErrorPage 属性,在 JSP 程序段中对错误进行处理

 
 

 
 

 
 

 
 

 
 

 
 

include 编译指令

 
 

include 是 JSP 的静态包含指令,使用它可以将一个 外部文件 包含到当前的 JSP 程序中

 
 

外部文件
可以是
HTML 文件,也可以是 JSP 文件,也能包含其他类型的文件 如:txt

 
 

如果是
JSP 文件,那么会在包含进来的同时,解析其中的 JSP 语句

 
 

include 编译指令的格式:<%@ include %>

 
 

如:

 
 

创建三个文件:header.html、body.txt、footer.jsp

 
 

header.html:

 
 

 
 

 
 

body.txt:

 
 

 
 

 
 

footer.jsp:

 
 

 
 

 
 


include.jsp 的 body 内将三者都包含进来

 
 

 
 

 
 

在浏览器中访问 include.jsp,运行一览:

 
 

 
 

 
 

 
 

JSP 会被转换成 Servlet,而通过 include 编译指令包含进来的所有文件,

最终会被转换成一个 Servlet(整体)

 
 

注意:在包含页面和被包含页面,JSP 声明 <%! %> 中同一类型的同名参数不能定义两次

 
 

 
 

 
 

 
 

taglib 编译指令

 
 

taglib 用于允许用户使用标签库自定义标签

 
 

taglib 编译指令的格式:<%@ taglib %>

 
 

 
 

 
 

 
 

参考:

参考链接1参考链接2参考链接3参考链接4参考链接5

 
 

 
 

 
 

 
 

 
 

 
 

【made by siwuxie095】

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

  1. JSP编译指令、JSP动作指令

    JSP编译指令:通过指令中的属性配置来向JSP容器发出指令,用来控制JSP页面的某些特征 JSP指令格式:<%@ 指令名   [一个或多个指令属性]%> 1.page:用于对JSP页面中的 ...

  2. JSP编译指令与动作指令

    下面这个面试经常问到,要理解. 上面这个效果一样,重点.   <jsp:include>动作在请求期间被执行,而include指令在编译期页面间被执行.

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

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

  4. JSP学习(2)---四种基本语法与三种编译指令

    JSP的异常可以不处理,即使是checked异常. 四种基本语法: jsp声明,jsp注释,jsp表达式,jsp脚本 三种编译指令: page,include,taglib 下面是具体的练习. sho ...

  5. JSP基本的语法、3个编译指令、7个动作指令、9个内置对象

    一.jsp概述 JSP是java server page的缩写,其本质是一个简化的servlet,是一种动态网页技术标准.jsp页面是在HTML页面中嵌入java程序段.使用jsp开发的应用程序能够跨 ...

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

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

  7. JSP的编译指令

    JSP有3个编译指令,是通知JSP引擎的消息,它不直接生成输出.编译指令都有默认值,无须为每个指令设置值. 常见的编译指令有如下三个: page:针对当前页面的指令. include:指定包含另一个页 ...

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

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

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

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

随机推荐

  1. NPM安装配置

    http://www.tuicool.com/articles/mmYZBn http://npm.taobao.org/ 安装Nodejs后即可开始NPM之旅了,新建一个package.json或者 ...

  2. iOS 图文混排 链接 可点击

    对于这个话题 我想到 1 第一个解决方法就是使用 webView 比较经典 把所有复杂工作都交给控件本身去处理了,  但是好像好多需要自定义的地方 没法从 webView获得响应回调 :(估计也可以实 ...

  3. var妙用

    var广泛使用其实也有用的.比如在一些不太确定类型的地方 (比如要区分int/uint/long/double的时候),用泛型太牛刀而不用又觉得不灵活的时候,其实是比较推荐var的比如设计某种类的时候 ...

  4. jquery中篇

    一.attr 返回属性值 返回被选元素的属性值. 语法 $(selector).attr(attribute) 参数 描述 attribute 规定要获取其值的属性. 属性 • 属性 o attr(n ...

  5. 算法(Algorithms)第4版 练习 1.5.15

    用归纳法推导: 1.height = 0时,成立,其level 0的节点个数为C(0,0)=1. height = 1时,成立,其level 0的节点个数为C(1,0)=1,其level 1的节点个数 ...

  6. Mac系统给移动硬盘分区(图文)

    刚买的硬盘500G   准备分几个区 移动硬盘分区格式化有3中形式: 1.Mac OS 扩展日志 格式 此格式mac专用,这种格式的硬盘在PC上不可见,可以用来给 Time Machine 备份, T ...

  7. 【Codeforces】Gym 101173B Bipartite Blanket 霍尔定理+状压DP

    题意 给一张$n\times m$二分图,带点权,问有多少完美匹配子集满足权值和大于等于$t$ 这里有一个结论:对于二分图$\mathbb{A}$和$\mathbb{B}$集合,如果子集$A \in ...

  8. CodeForces - 1017F. The Neutral Zone (数学+Bitset存素数+素数筛优化)

    Notice: unusual memory limit! After the war, destroyed cities in the neutral zone were restored. And ...

  9. ACM学习历程—Rotate(HDU 2014 Anshan网赛)(几何)

    Problem Description Noting is more interesting than rotation! Your little sister likes to rotate thi ...

  10. bzoj 3796: Mushroom追妹纸 AC自动机+后缀自动机+dp

    题目大意: 给定三个字符串s1,s2,s3,求一个字符串w满足: w是s1的子串 w是s2的子串 s3不是w的子串 w的长度应尽可能大 题解: 首先我们可以用AC自动机找出s3在s1,s2中出现的位置 ...