1、jsp简介:
Jsp:(全称Java Server Pages),jsp是一个特殊的servlet;
servlet不足:写一堆的html标签拼接;jsp是在java+html基础上,可写java代码和html标签,主要用于页面的显示;
2、jsp生命周期;
jspInit()初始化
jspService()服务:主要功能代码
jspDestroy()销毁
Jsp生命周期和servlet一样
3、jsp运行原理
Jsp执行过程:
用户客户端访问页面发送请求,被web服务器翻译成.java文件,然后被jdk编译成class文件,最后在被web服务器解析成html响应到客户端;
如图所示:
4、jsp九大内置对象
name 类型 描述(decription)
pageContext PageContext 上下文
session HttpSession 会话
application ServletContext 应用服务
config ServletConfig 配置
out JspWriter 输出
page index_jsp Jsp的java文件
request HttpServletRequest 请求
response HttpServletResponse 响应
e Exception 异常
5、jsp的四大作用域
作用域 描述
Page(pageContext) 当前页
request 一次请求(多个页面)
session 一次会话
application 应用
6、注解
注解简化了web.xml的配置;简化了代码量;
注解@WebServlet(路径url)相当于web.xml中的servlet标签和servlet-mapping标签;
7、EL表达式
语法:${表达式}
El主要用于页面中的取值;简化页面代码
el表达式对应的作用域:
${pageScope.key}
${requestScope.key}
${sessionScope.key}
${applicationScope.key}
示例代码如下:
<%
request.setAttribute("request", "request01");
%>
<!-- el取值:requestScope -->
${requestScope.request }
<%=session.getAttribute("name") %>
<!-- el表达式取值:sessionScope-->
${sessionScope.name }
8、JSTL标签库
JSP标准标签库(JSTL)是一个JSP标签集合,它封装了JSP应用的通用核心功能。
示例代码如下:
</c:forEach>
<%--
数组:
--%>
<%
int []arr=new int[5];
arr[0]=1;
arr[1]=2;
arr[2]=3;
arr[3]=4;
arr[4]=5;
%>
<<c:forEach items="<%%=arr.length %>
=arr %>" var="i">
<c:out value="${i}"></c:out>
</c:forEach>