----------------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 %>
参考:
【made by siwuxie095】