开发工具与关键技术:IEDA与 Java Web
作者:蔡杰明
撰写时间:2021 年 08 月 09 日
JSP是什么? JSP是一种建立在Servlet规范提供的功能之上的动态网页技术,允许在网页文件中嵌入java代码和jsp标记。 Java 服务器页面 (Java Server Page ,JSP) ;扩展名 .jsp 
jsp的执行过程:
(1)Jsp文件在用户第一次请求时,会被编译成Servlet,然后由这个Servlet处理用户的请求,所以jsp可以看成是运行时的Servlet
(2)Jsp容器(也就是Servlet容器)管理jsp页面声明周期分为两个阶段,即转换阶段和执行阶段
(3)当有一个对jsp页面的请求到来时,jsp容器检查jsp页面的语法是否正确,将jsp页面转换为Servlet源文件,然后调用javac命令编译Servlet源文件生成字节码文件 -->转换阶段
(4)Servlet容器加载转换后的Servlet类 -->执行阶段
JSP页面的元素
静态内容 : HTML、js、css静态文本
指令 :以 <%@ 开始,以 %> 结束
表达式:<%=Java表达式 %>
代码块:<% Java 代码(变量:_jspService方法的局部变量) %>
声明:<%! 函数或方法、变量(成员变量) %>
动作:以 <jsp: 动作名 开始,以 </jsp:动作名> 结束
注释:<%-- 这也是注释,但客户端不能查看到 --%> 、
JSP 指令
用来设置与整个 JSP 页面相关的属性。
<%@ page … %> 定义页面的依赖属性,比如脚本语言、error 页面、缓存需求等等
<%@ include … %> 包含其他文件
<%@ taglib … %> 引入标签库的定义,可以是自定义标签 <%@ taglib uri=“http://java.sun.com/jsp/jstl/core” prefix=“c” %>
jsp的九大内置对象
- request HttpServletRequest 类的实例
- response HttpServletResponse 类的实例
- out PrintWriter 类的实例,用于把结果输出至网页上
- session HttpSession 类的实例
- application ServletContext 类的实例,与应用上下文有关
- config ServletConfig 类的实例
- pageContext PageContext 类的实例,提供对 JSP 页面所有对象以及命名空间的访问
- page 类似于 Java 类中的 this 关键字
- Exception Exception 类的对象,代表发生错误的 JSP 页面中对应的异常对象JSP 作用域包括 page、request、session 和 application