首页 > Web开发 > 详细

EL表达式和JSTL标签

时间:2020-04-07 00:43:46      阅读:97      评论:0      收藏:0      [点我收藏+]
1. EL表达式
* 概念:Expression Language 表达式语言
* 作用:替换简化jsp页面中java代码的编写
* 语法:${表达式}
* 注意:
* jsp 默认是支持jsp表达式的
将JSP中page指令的isELIgnored = true
\${} 加了反斜线就会忽略EL表达式成为一个可显示的普通字符串
* 使用:
* 运算
1. 运算符
1. 算数运算符: +,-, *, /(div), %(mod)
2. 比较运算符:<, >, <=, >=, ==, != ...
3. 逻辑运算符:&&(and), ||(or), !(not)
4. 空运算符(empty)
* 功能:用于判断字符串,集合,数组对象是否为null并且长度是否为零
* 获取值
* el表达式只能从域对象中获取值
* 语法
${域名称.键名}:从指定得域中获取指定得键得值
1. pageScope --> pageContext
2. requestScope --> request
3. sessionScope --> session
4. applicationScope --> application (ServletContext)
${键名}:表示一次从最小得域开始查找,知道找到为止
对象:${域名称.键名.对象名}
获取对象:List集合, Map集合得值
1. List集合:${域名称.键名[索引值]}
2. Map:${map.键名}
${map["键名"]}
隐式对象:
* pageContext:
1. 获取jsp其他八个内置对象(区别于隐式对象)
2. ${pageContext.request.contextPath}:动态获取虚拟目录
2. JSTL标签
1. 概念:JavaServlet Pages Tag Library ->jsp标准标签库
* 是由Apache组织提供得开源的免费的jsp标签
2. 作用:用于简化和替换jsp页面上的java代码
3. 使用步骤:
1. 导入jstl相关jar包
2. 引入标签库:tablib指令
3. 使用标签
4. 常用的JSTL标签
1. if :相当于java的if语句
c:if 标签
1. 属性:
* test必须属性,接收boolean表达式
* 如果表达式为true, 则显示标签体的内容,如果为false则不显示标签体的内容
* 一般情况下,这里的test 属性肯定不会是固定值,而是结合el表达式来一起使用
例如:
<c:if test="${not empty requestScope.get(‘name_list‘)}">
遍历集合
</c:if>
2. choose :相当于java代码的switch语句
<%--
完成数字编号对应星期几的案例
1. 在域中存储一数字
2. 使用choose标签取出数字 (相当于switch关键字)
3. 使用when 标签做数字判断 (相当于case)
4. otherwise标签做其他情况的声明
--%>
<c:choose>
<c:when test="${requestScope.get(‘number‘) == 1}">星期1</c:when>
<c:otherwise>憋瞎写</c:otherwise>
</c:choose>
3. foreach :相当于java的for循环语句
foreach使用场景:
1. 完成重复操作
* 属性:
begin:开始值
end:结束值
var:临时变量
step:步长
varStatus:循环状态对象
<c:forEach begin="1" end="10" var="i" step="1" varStatus="s">
${i}&nbsp;${s.index}&nbsp;${s.count}<br>
</c:forEach>
2. 遍历容器
<c:forEach items="${requestScope.get(‘list‘)}" var="item">
${item}
</c:forEach>

EL表达式和JSTL标签

原文:https://www.cnblogs.com/BXLH/p/12650500.html

踩
(1)
赞
(1)
   
举报
评论 一句话评论(0)
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!