目录:
一、jsp内置对象之域对象:
二、EL(Expression Language)表达式:
三、JSTL
一、jsp内置对象之域对象:
pageContext:属性的作用范围仅限当前的jsp页面(范围最小)
request:属性的作用范围仅限同一个请求(转发有效)
session:属性的作用范围仅限于一次会话,浏览器打开直到关闭称为一次会话(在此期间会话不失效)
application:属性的作用范围仅限于当前web应用(范围最大)
pageContext.setAttribute("aa", "小炮");//作用域仅限于当前的jsp页面
request.setAttribute("aa", "中炮");//仅限于当前的请求(转发有效)
session.setAttribute("aa", "澳大利炮");//作用域仅限于当前会话(浏览器的打开和关闭之间称之为一次会话)
application.setAttribute("aa", "排机炮");//作用域仅限于当前web应用(服务器的打开和关闭之间有效)
=============================================================
【将有些页面一分为二】
二、EL(Expression Language)表达式:
-- 功能:替代jsp页面中的复杂代码
-- 语法:${EL expression}
${bean.name}
-- EL中的隐含对象(pageScope、requestScope、sessionScope、applicationScope)
1、${pageScope.aa }<br>
2、${requestScope.aa }<br>
3、${sessionScope.aa }<br>
4、${applicationScope.aa }<br>
-- EL运算符(算术 关系 Empty运算符【判断集合中值是否为空 返回true或者false】)
${1+2 }___ ${5>2 }__${not empty myls}<!-- 判断是否为空 -->
<h3>EL表达式取对象的属性值</h3>
<!-- 能够点出来的一定是在实体类中存在的属性名 -->
${goods.gname}___${goods.gid}------${goods.gprice}
=============================================================
三、JSTL
--通用标签:set out remove
--条件标签:if
--迭代标签:forEach
<h3>通用标签:set out remove</h3>
<c:set var="sb" value="${665+1}" scope="session"></c:set>
<c:out value="${sb}"></c:out><br>
移除前:${sb}<br>
<c:remove var="sb" scope="request"/>
移除后:${sb}
<h3>条件标签:if</h3>
<c:if test="${empty myls}">
就是这么六!
</c:if>
<h3>迭代标签:forEach</h3>
打印1-10的奇数:<br>
<c:forEach begin="1" end="10" var="i" step="2">
${i}
</c:forEach>
<!-- 遍历对象集合 for(Goods g:ls){} -->
<c:forEach items="${myls}" var="g">
${g.gname}
</c:forEach>
<!-- split 用逗号分割 -->
<c:forTokens items="aa,bb,cc,dd" delims="," var="i">
${i}
</c:forTokens>