EL表达式和STL标签库

本文介绍了EL表达式和JSTL标签库在Java Web开发中的应用。EL表达式简化了对象获取和类型转换,通过对象.属性方式便捷地访问值。JSTL作为一个标签库,减少了JSP页面中的脚本,使页面更整洁,并提供了逻辑判断功能,可与EL表达式配合使用。使用JSTL需引入相应jar包并指定标准库路径。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1 EL表达式

EL表达式核心点是将对象存储到某个域中,在需要的页面中直接使用表达式来使用,从来减少获取及强制类型转换的操作

<%
//存储
session.setAttribute("name","小黑");
//存储对象
Emp emp = new Emp();
emp.setEname("阿狸");
emp.setSex("女");
session.setAttribute("emp",emp);
%>
name:${name}
<hr>
ename:${emp.ename}
sex:${emp.sex}

注意:el表达式存储对象后,可以直接通过对象.属性获取值(实际是通过类中的setter和getter方法获取的)

运算符关键词描述
==eq判断是否相等
>gt判断是否大于
<lt判断是否小于
empty判断是否为空
!not
${empty emp}
${not empty emp}
${emp == null}

多个作用域有相同的key

<%
request.setAttribute("name","小黑");
application.setAttribute("name","小花");
session.setAttribute("name","小红");
pageContext.setAttribute("name","小绿");
%>
<%--当多个域中有相同的key时,按照作用域的大小,从小到大查找--%>
${name}

2 JSTL标签库

JSTL是一个标签库(其中是以标签的形式来进行使用的),可以简化JSP页面中的小脚本的使用频率,让JSP页面看着更干净整洁

JSTL中也提供了用于做逻辑判断的功能,可以结合EL表达式使用

步骤:

1.关联jar包(JSTL的标签库、JSTL的规范)

2.引入标准库路径

<!%--prefix:别名 uri:引入的标准库路径--%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%--1~5循环--%>
<c:forEach begin="1" end="5" var="index">
  ${index}
</c:forEach>
<%--遍历数组
  items:指定要遍历的对象
    var:每次遍历对应的对象
    begin:开始值
    end:结束值
    varStatus:下标对象
    --%>
<c:forEach items="${strArr}" var="str" varStatus="indexObj">
  ${str},${indexObj.index}
</c:forEach>
<hr>
<%--遍历list集合--%>
<c:forEach items="${list}" var="str" varStatus="indexObj">
  ${str},${indexObj.index}
</c:forEach>
<hr>
<%--
  for(int i=0;i<empList.size();i++){empList.get(i);}
for(Emp emp : empList){}
--%>
<c:forEach items="${empList}" var="emp">
  姓名:${emp.ename},序号:${emp.eno}<br>
</c:forEach>
<hr>
<%--遍历Map集合--%>
<c:forEach items="${map}" var="map">
  ${map.key},${map.value}
</c:forEach>
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值