一、JSP脚本和注释
JSP脚本:
类型 | 作用 |
---|---|
<% Java代码 %> | 内部的Java代码会被翻译到Service() 方法的内部 |
<%= Java变量或者表达式 %> | 内部的Java变量或者表达式会被翻译成Service() 内部out.print() 方法,最终在网页上输入内容 |
<%! Java代码 %> | 内部的Java代码会被翻译成Servlet 的成员的内容 |
JSP注释: 不同的注释可见范围不同。
注释类型 | 可见范围 |
---|---|
html注释:<!-- 注释内容 --> | jsp源码,翻译后的servlet,页面显示html源码 |
ava注释:// 单行注释,/*多行注释 */ | jsp源码,翻译后的servlet |
JSP注释:<%-- 注释内容 --%> | jsp源码 |
二、JSP运行原理
JSP的本质就是Servlet,JSP在第一次被访问时会被Web容器翻译成Servlet,执行过程:
第一次访问---->hello.jsp—>hello_jsp.java---->编译运行。
之后修改jsp文件时也会重新翻译。
被翻译后的servlet在TomCat的work目录中可以找到。
三、JSP指令(3个)
JSP的指令是指导JSP翻译和运行的命令,JSP包括三大指令。
page
指令,根据不同属性,指导整个页面特性,常用属性如下:
language:JSP脚本中可以嵌入的语言种类
pageEncoding:当前jsp文件的本身编码–内部可以包含contentType
session:是否JSP在翻译时自动创建session
import:导入java的包
errorPage:当当前页面出错后跳转到哪个页面
isErrorPage:当前页面是一个处理错误的页面include
指令
页面包含(静态包含)指令,可以将一个jsp页面包含到另一个jsp页面中,格式:<%@ include file=“被包含的文件地址”%>taglib
指令
在JSP页面中引入标签库,格式:
<%@ taglib uri=“标签库地址” prefix=“前缀”%>
四、JSP内置/隐式对象(9个)
名称 | 类型 | 描述 |
---|---|---|
out | javax.servlet.jsp.JspWriter | 用于页面输出 |
request | javax.servlet.http.HttpServletRequest | 得到用户请求信息 |
response | javax.servlet.http.HttpServletResponse | 服务器向客户端的回应信息 |
config | javax.servlet.ServletConfig | 服务器配置,可以取得初始化参数 |
session | javax.servlet.http.HttpSession | 用来保存用户的信息 |
application | javax.servlet.ServletContext | 所有用户的共享信息 |
page | java.lang.Object | 指当前页面转换后Servlet类的实例 |
pageContext | javax.servlet.jsp.PageContext | JSP的页面容器 |
exception | java.lang.Throwable | 表示JSP页面所发生的异常,在错误页中才起作用 |