是sun公司制定的一种用于服务器端页面生成的技术规范。因为servlet不擅长展示页面(代码量太繁琐,不方便后期维护), 所以将页面展示的部分交给JSP去完成。
理解JSP底层功能的关键就是去理解它们所遵守的生命周期。
JSP生命周期就是从创建到销毁的整个过程,类似于servlet生命周期,区别在于JSP生命周期还包括将JSP文件编译成servlet。
以下是JSP生命周期中所走过的几个阶段:
解析阶段:Servlet容器解析JSP文件代码,如果有语法错误,就会向客户端返回错误信息
翻译阶段:Servlet容器把JSP文件翻译成Servlet源文件
编译阶段:Servelet容器编译Servlet源文件,生成servelet类
初始化阶段:加载与JSP对应的Servlet类,创建其实例,并调用它的初始化方法
运行时阶段:调用与JSP对应的Servlet实例的服务方法
销毁阶段:调用与JSP对应的Servlet实例的销毁方法,然后销毁Servlet实例
脚本程序
<% 代码片段 %>
或者,也可以编写与其等价的XML语句
<jsp:scriptlet>
代码片段
</jsp:scriptlet>
JSP声明
一个声明语句可以声明一个或多个变量、方法,供后面的Java代码使用。el表达式使用java方法在JSP文件中,必须先声明这些变量和方法然后才能使用它们。
<%! int i = 0; %>
<%! int a, b, c; %>
<%! Circle a = new Circle(2.0); %>
<jsp:declaration>
boolean flag = true;
</jsp:declaration>
JSP表达式
<%= 表达式 %>
<%= new java.util.Date().toLocalString() %>
JSP注释
语法描述
JSP指令
语法格式:
<%@ directive attribute = “value” %>
指令可以有很多个属性,它们以键值对的形式存在,并用逗号隔开。
JSP中的三种指令标签:
指令描述
Page指令
属性 描述
Include指令
JSP可以通过include指令来包含其他文件。被包含的文件可以是JSP文件、HTML文件或文本文件。包含的文件就好像是该JSP文件的一部分,会被同时编译执行。
Include指令中的文件名实际上是一个相对的URL。如果您没有给文件关联一个路径,JSP编译器默认在当前路径下寻找。
Taglib指令
JSP API允许用户自定义标签,一个自定义标签库就是自定义标签的集合。Taglib指令引入一个自定义标签集合的定义,包括库路径、自定义标签。
<%@ taglib uri="uri" prefix="prefixOfTag" %>uri uri属性确定标签库的位置,prefix属性指定标签库的前缀。对象 描述
request对象
request 对象是 javax.servlet.HttpServletRequest类型的对象。 该对象代表了客户端的请求信息,主要用于接受通过HTTP协议传送到服务器的数据。(包括头信息、系统信息、请求方式以及请求参数等)。request对象的作用域为一次请求。
response对象
response 代表的是对客户端的响应,主要是将JSP容器处理过的对象传回到客户端。response对象也具有作用域,它只在JSP页面内有效。
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-85603-1.html
66666666666666666
20
不可逞一念之勇