EL表达式
作用 | 代码 |
---|---|
语法 | ${表达式} |
忽略表达式 | ${表达式} |
空运算符 empty 用于判断字符串、集合、数组对象是否为null并且长度为0 | ${empty 键名} |
获取值
代码 | 作用 |
---|---|
域名称.setAttribute(“名称”,“内容”) | 在域中存储数据; |
1.${域名称.键名} | 从指定域中获取指定键的值 (找不到显示空字符串) |
域名称:
- pageScope --> 从 pagecontext 中获取值 当前页面
- requestScope --> 从 request 中获取值 转发有效期
- SessionScope --> 从 Session 中获取值 会话有效期(时间不到,浏览器不关)
- ApplicationScope --> 从 Application(ServletContext) 中获取值 所有客户端共享
规则
${键名} 依次从最小的域中查找对应的值,直到找到为止 1<2<3<4
作用 | 代码 |
---|---|
获取对象 | ${域名称.键名.属性名} 本质上调用getter方法 |
获取list值 | ${域名称.键名[角标]} 角标越界显示空 |
获取map值 | ${域名称.键名[“key名称”]} |
JSTL 标签库
使用
- 导包
- 引入
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"@>
作用 | 代码 |
---|---|
if语句 | <c:if test=“布尔值”>为true执行语句</c:if> |
choose语句(switch)
<c:choose>
<c:when text="${判断值1}">为true执行语句<c:when>
<c:when text="${判断值2}">为true执行语句<c:when>
·······
<c:otherwise>其他情况语句</c:otherwise>
</c:choose>
forEach语句
普通for
<c:forEach begin="开始值" end="结束值" var="临时变量" step="步长">循环语句</c:forEach>
属性:count循环次数 index元素索引
高级for循环
<c:forEach items="${容器对象}" var="临时变量" varStatus="循环状态对像">循环语句</c:forEach>