JSP进阶
...大约 2 分钟
JSP入门学习可在之前文章回顾。
1. JSP的指令
1.1. 作用
用于配置JSP页面,导入资源文件。
1.2. 格式
<%@ 指令名称 属性名1=属性值1 属性名2=属性值2 ... %>
,
实例:
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
。
1.3. 指令名称分类
共三类,包括page、include和taglib。
1.3.1. page
配置JSP页面的,以下为page指令常用的属性名:
contentType:等同于
response.setContentType()
- 设置响应体的mime类型以及字符集;
- 设置当前jsp页面的编码(只能是高级的IDE才能生效,如果使用低级工具,则需要设置pageEncoding属性设置当前页面的字符集);
- 例子:
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
。
import:导入java代码需使用的包
- 例子:
<%@ page import="java.util.List" %>
。
- 例子:
errorPage:当前页面发生异常后,会自动跳转到指定的错误页面。
isErrorPage:标识当前页面是否是错误页面。
- true:是,可以使用内置对象exception;
- false:否。默认值。不可以使用内置对象exception。
1.3.2. include
导入页面的资源文件,例子:<%@include file="top.jsp"%>
。
1.3.3. taglib
导入资源(标签库),例子:<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
。
这里的prefix表示之后使用该标签库的前缀,是自定义的。
2. JSP的注释
- html注释:
<!-- -->
:只能注释html代码片段。
- jsp注释:
<%-- --%>
:可以注释所有,包括java和html等,一般推荐使用这种方式。
3. JSP的内置对象
在jsp页面中不需要创建,直接使用的对象。
3.1. 9个内置对象
JSP的内置对象共9个,如下表:
变量名 | 真实类型 | 作用 |
---|---|---|
pageContext | PageContext | 当前页面共享数据,还可以获取其他八个内置对象 |
request | HttpServletRequest | 一次请求访问的多个资源(转发) |
session | HttpSession | 一次会话的多个请求间 |
application | ServletContext | 所有用户间共享数据 |
response | HttpServletResponse | 响应对象 |
page | Object | 当前页面(Servlet)的对象 this |
out | JspWriter | 输出对象,数据输出到页面上 |
config | ServletConfig | Servlet的配置对象 |
exception | Throwable | 异常对象,isErrorPage为true时,可以使用内置对象exception |