JSP
1、JSP简介
jsp全称Java Server Page, 一种动态网页开发技术。它允许使用el表达式、jstl来获取Java代码中的数据,同时允许在jsp中编写html代码,使得jsp可以非常容易的显示页面。Jsp本质是Servlet,最终以Servlet方式运行,所以可以说Jsp是一种特殊的Servlet。
2、Jsp使用
查看Jsp生成的文件
3、Jsp组成结构
- 静态内容–>Html静态文本
- 注释
- 声明–><%! 函数或方法 %>
- 表达式–><%=java表达式%>
- Scriptlet–><% java代码 %>
- 指令–>以“<% @”开始,以“%>”结束,例如:<%@ include file = " Filename" %>
- 动作:以“<jsp: 动作”开始,以“”结束,例如:<jsp:include page=" Filename" />
3.1、静态内容
3.2、Scriptlet
<% java代码 %>
3.3、声明
<%! int a = 0; %>
3.4、表达式
<%=a%>
3.5、指令
<%@ page ... %>
定义网页依赖属性,比如脚本语言、error页面、缓存需求等等
<%@ include ... %>
包含其他文件
<%@ taglib ... %>
引入标签库的定义
3.6、动作
jsp:include:在页面被请求的时候引入一个文件
jsp:forward:把请求转到一个新的页面
jsp:useBean:寻找或者实例化一个JavaBean
jsp:setProperty:设置JavaBean的属性
jsp:getProperty:输出某个JavaBean的属性
jsp:plugin:根据浏览器类型为Java插件生成OBJECT或EMBED标记
jsp:element:定义动态XML元素
jsp:attribute:设置动态定义的XML元素属性
jsp:body:设置动态定义的XML元素内容
jsp:text:在JSP页面和文档中使用写入文本的模板
4、JSP生命周期
jsp本质是一个Servlet,它比Servlet的生命周期多了一个编译阶段。
编译阶段
实例化阶段
初始化阶段
执行阶段
销毁阶段
回收阶段
5、Jsp九大隐式对象
request:HttpServletRequest对象,代表请求
response:HttpServletResponse对象,代表响应
out:JspWrite对象,代表输出
session:会话对象,代表每个会话
application:应用对象,代表整个应用程序
config:配置对象,代表配置文件中的信息
pageContext:页面上下文对象,包含页面信息
page:当前页面对象(基本不使用)
Exception:异常对象,包含jsp异常信息
6、JSP四大作用域
request:作用在请求阶段
设置参数
request.setAttribute("key", "value");
获取参数
request.getAttribute("key");
page:作用在某个页面
设置参数
pageContext.setAttribute("key", "value");
获取参数
pageContext.getAttribute("key");
session:作用在整个会话
servlet中设置参数
request.getSession().setAttribute("key", "value");
jsp中设置参数
session.setAttribute("key", "value");
获取参数
session.getAttribute("key");
application:作用在整个应用程序
Servlet设置参数
request.getServletContext().setAttribute("key", "value");
jsp设置参数
application.setAttribute("key", "value");
获取参数
application.getAttribute("key");
7、MVC模式
MVC不是一种技术,而是一种思想,一种架构模式,它主要用来将页面、数据、逻辑代码进行分离,更是责任分工的一种体现。
M:Model(模型)
V:View(视图)
C:Controller(控制器)
M:JavaBean
V:显示jsp
C:servlet