1.jsp
jsp本质是一个servlet,可以在HTML中写java脚本,java的服务端网页
2.九大内置对象:
*request:HTTPServletRequest对象,代表客户端请求信息,主要用于接收http协议传输到服务器上的数据
response:HTTPServletResponse对象,代表对客户端的响应
*session:HTTPSession对象,代表浏览器的一次会话
*application:ServletContext对象,代表当前web应用
config:ServletConfig对象,代表当前servlet,可以读取当前servlet信息
out:JSPWriter对象,可以把结果输出到浏览器上
page:代表当前jsp页面(当前jsp对应servlet对象的引用)
exception:代表异常对象
*pageContext:代表当前页面上下文,可以获取其他八个内置对象
3.四个域对象
application session request pageContext(与范围从大到小)
application:最大的作用范围,范围限于当前web应用,只是在一处设置了,当前web应用下的其他servlet和jsp都可以访问
session:范围限于一次会话,浏览器从打开到关闭
request:范围限于一次请求
pageContext:范围限于当前页面
4.EL表达式
语法:${表达式}
从某一范围根据name去取值,如果没有指定从哪一范围,默认作用域范围从小到大,如果取到直接返回
el表达式不能遍历集合,只能通过下标访问
el飙到是支持运算符运算
el表达式可以自动类型转换
内置对象:
pageScope:表示pageContext的域对象
requestScope:表示request
sessionScope:表示session
applicationScope:表示application
param:获取参数
5.jstl:是依赖于EL表达式的标签语言
JSTL标签
core:核心标签库,执行输出,设置值,可以遍历
输出值:<c:out value=“jack”></c:out>输出jack到浏览器上。
可以进行默认值的设置<c:out value="${name}" default=“没有值”></c:out> 当name不存在时输出“没有值”
设置值:<c:set var=“cset” value=“hello c:set” scope=“request”></c:set>
${requestScope.cset }输出"hello c:set"到浏览器
删除值:<c:remove var=“cset” scope=“request”/>
c
s
e
t
删
除
r
e
q
u
e
s
t
中
的
c
s
e
t
的
值
判
断
:
只
有
i
f
没
有
e
l
s
e
c
:
i
f
t
e
s
t
=
"
{cset }删除request中的cset的值 判断:只有if没有elsec:if test="
cset删除request中的cset的值判断:只有if没有elsec:iftest="{param.age<20 }">太小了,未到达法定结婚年龄!</c:if>
<c:choose/c:when/c:otherwise 相当于if else >
<c:choose>
<c:when test="
p
a
r
a
m
.
a
g
e
<
20
"
>
小
于
20...
<
/
c
:
w
h
e
n
>
<
c
:
w
h
e
n
t
e
s
t
=
"
{param.age<20}"> 小于20... </c:when> <c:when test="
param.age<20">小于20...</c:when><c:whentest="{param.age>=20 && param.age<=100}">
20~100…
</c:when>
<c:otherwise>
大于100…
</c:otherwise>
</c:choose>
遍历:items:要被循环遍历的信息
begin:开始的元素
end:结束的元素
step:每一次迭代的步长
var:代表当前条目的变量名称
varStatus:代表循环状态的变量名称 .count表示迭代数量
<c:forEach var="i" begin="0" end="9" step="2" varStatus="sta">
${i },第${sta.count }次<br/>
</c:forEach>
<hr>
<c:forEach var="a" items="${requestScope.arr }">
${a }
</c:forEach>
使用taglib指令导入jstl标签库<%@ taglib prefix="c" uri="路径"%>
6.MVC模式
MVC模式(Model-View-Controller)是模型(model)-视图(view)-控制器(controller)的缩写,
一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,
在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑
Model(模型):表示应用程序核心,(比如数据库记录列表)–Bean,封装数据
View(视图):显示数据,如jsp/html页面
Controller(控制器):控制页面流转的, 如servlet负责转发