JSP进阶

Mr.he...大约 2 分钟JavaWEBJSP

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指令常用的属性名:

  1. contentType:等同于response.setContentType()

    • 设置响应体的mime类型以及字符集;
    • 设置当前jsp页面的编码(只能是高级的IDE才能生效,如果使用低级工具,则需要设置pageEncoding属性设置当前页面的字符集);
    • 例子:<%@ page contentType="text/html;charset=UTF-8" language="java" %>
  2. import:导入java代码需使用的包

    • 例子:<%@ page import="java.util.List" %>
  3. errorPage:当前页面发生异常后,会自动跳转到指定的错误页面。

  4. 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的注释

  1. html注释:

<!-- -->:只能注释html代码片段。

  1. jsp注释:

<%-- --%>:可以注释所有,包括java和html等,一般推荐使用这种方式。

3. JSP的内置对象

在jsp页面中不需要创建,直接使用的对象。

3.1. 9个内置对象

JSP的内置对象共9个,如下表:

变量名真实类型作用
pageContextPageContext当前页面共享数据,还可以获取其他八个内置对象
requestHttpServletRequest一次请求访问的多个资源(转发)
sessionHttpSession一次会话的多个请求间
applicationServletContext所有用户间共享数据
responseHttpServletResponse响应对象
pageObject当前页面(Servlet)的对象  this
outJspWriter输出对象,数据输出到页面上
configServletConfigServlet的配置对象
exceptionThrowable异常对象,isErrorPage为true时,可以使用内置对象exception