what is EL表达式: 全名:
Expression Language 是一种表达式语言
功能与优点:
简化代码 ,优化界面(但:运行报错时,在网页无报错警告),自动转型
语法:
1.${ EL exprission }、 ${ bean.name } 或 ${ bean['name'] }
注意:
2.变量属性范围名称:
属性范围 | EL中的名称 |
page | pageScope,例如${pageScope.username},表示在page范围内查找username变量,找不到返回Null |
request | requstScope |
session | sessionScope |
application | applicationScope |
3.获取对象:
方法:
对象名称 | 说 明 |
pageScope | 返回页面范围的变量名,这些名称已映射至相应的值 |
requestScope | 返回请求范围的变量名,这些名称已映射至相应的值 |
sessionScope | 返回会话范围的变量名,这些名称已映射至相应的值 |
applicationScope | 返回应用范围内的变量,并将变量名映射至相应的值 |
param | 返回客户端的请求参数的字符串值 |
paramValues | 返回映射至客户端的请求参数的一组值 |
pageContext | 提供对用户请求和页面信息的访问 |
//这里是用来演示 作用域的
request.setAttribute("z", "李");
session.setAttribute("z", "刘");
application.setAttribute("z", "吴");
取值:
注意:要先导包哦:
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
z:${z }<br>
sessionZ:${sessionScope.z }<br>
applicationZ:${applicationScope.z }<br>
定义、打印、删除以及判断的方法:
<!-- 定义变量a: 赋值777 -->
<c:set var="a" value="777"></c:set>
<c:set var="b" value="${100+1 }" ></c:set>
<!-- 打印变量 -->
<c:out value="${a }"></c:out>
<c:out value="${b }"></c:out>
<!-- 删除变量 -->
<c:remove var="a"/>
a:<c:out value="${a }"></c:out>
用户:<c:out value="${u }"></c:out>
<!-- if -->
<c:if test="${true }">
条件成立
</c:if>
<c:if test="${false }">
条件不成立
</c:if>
<!-- 判断用户是否登录 -->
<c:if test="${empty u }">
<h1>用户为空</h1>
</c:if>
循环方法:
<!-- for循环 -->
<c:forEach begin="1" step="10" end="100" var="i">
${i }<br>
</c:forEach>
<hr>
<!-- 遍历集合 -->
<c:forEach items="${ulist }" var="user">
${user.uname }____${user.upwd }<br>
</c:forEach>
总结:
将原本的对象用EL方式替代