一、概述
- JSP其实是一个Servlet。
- JSP页面需要在JSP容器下运行,Servlet容器一般也称为JSP容器(Tomcat就是一个Web容器)
二、JSP相关用法
- JSP注释:<%-- --%>
- JSP表达式:<%= %>
- JAVA代码块:<% %>
- JSP声明:<%! %>
三、JSP 指令
JSP指令用来设置整个JSP页面相关的属性。
指令 | 描述 |
---|---|
<%@ page ... %> | 定义网页依赖属性,比如脚本语言、error页面、缓存需求等等 |
<%@ include ... %> | 包含其他文件 |
<%@ taglib ... %> | 引入标签库的定义 |
3-1:Page指令
语法格式:
<%@ page attribute="value" %>
属性
下表列出与Page指令相关的属性:
属性 | 描述 |
---|---|
buffer | 指定out对象使用缓冲区的大小 |
autoFlush | 控制out对象的 缓存区 |
contentType | 指定当前JSP页面的MIME类型和字符编码 |
errorPage | 指定当JSP页面发生异常时需要转向的错误处理页面 |
isErrorPage | 指定当前页面是否可以作为另一个JSP页面的错误处理页面 |
extends | 指定servlet从哪一个类继承 |
import | 导入要使用的Java类 |
info | 定义JSP页面的描述信息 |
isThreadSafe | 指定对JSP页面的访问是否为线程安全 |
language | 定义JSP页面所用的脚本语言,默认是Java |
session | 指定JSP页面是否使用session |
isELIgnored | 指定是否执行EL表达式 |
isScriptingEnabled | 确定脚本元素能否被使用 |
3-2:Include指令
JSP可以通过include指令来包含其他文件。被包含的文件可以是JSP文件、HTML文件或文本文件。包含的文件就好像是该JSP文件的一部分,会被同时编译执行。
语法格式如下:
<%@ include file="文件相对 url 地址" %>
include 指令中的文件名实际上是一个相对的 URL 地址。
如果您没有给文件关联一个路径,JSP编译器默认在当前路径下寻找。
3-3:Taglib指令
JSP API允许用户自定义标签,一个自定义标签库就是自定义标签的集合。
Taglib指令引入一个自定义标签集合的定义,包括库路径、自定义标签。
Taglib指令的语法:
<%@ taglib uri="uri" prefix="prefixOfTag" %>
uri属性确定标签库的位置,prefix属性指定标签库的前缀。
四、九大内置对象
1. request 请求对象 (作用域)
类型 javax.servlet.ServletRequest 作用域 Request
2. response 响应对象
类型 javax.servlet.SrvletResponse 作用域 Page
3. pageContext 页面上下文对象 (作用域)
类型 javax.servlet.jsp.PageContext 作用域 Page
4. session会话对象 (作用域)
类型 javax.servlet.http.HttpSession 作用域 Session
5. application 应用程序对象 (作用域)
类型 javax.servlet.ServletContext 作用域 Application
6. out 输出对象
类型 javax.servlet.jsp.JspWriter 作用域 Page
7. config 配置对象
类型 javax.servlet.ServletConfig 作用域 Page
8. page 页面对象
类型 javax.lang.Object 作用域 Page
9. exception 例外对象
类型 javax.lang.Throwable 作用域 page