JavaWeb之JSP(Day03)JSTL标签库

JSTL

JSTL标签库和EL表达式区别

EL表达式主要替换jsp中的表达式脚本,jstl标签库为了替换代码脚本。

引入

导入jstl标签库的jar包:taglibs-standard

set标签

<%--
    set标签:向域中保存数据
    域对象.setAttribute(key,value)
    scope 属性设置保存到哪个域
            page 表示PageContext域
            request表示Request域
            session表示Session域
            application表示ServletContext域
    key  用var
    value  用value
--%>
<c:set scope="request" var="key1" value="value1"/>
${requestScope.key1} <br>

if标签

if标签:做if判断
test属性表示判断的条件(使用EL表达式)

<c:if test="${12==12}">
    <h1>EL表达式成立</h1>
</c:if>
<c:if test="${12!=12}">
    <h1>EL表达式不成立,不显示</h1>
</c:if>

choose标签

choose标签开始选择判断 类似switch-case
when标签表示每一种判断情况
test属性 (EL表达式)
otherwise表示其他情况,如果仍要做多个判断,需要再加choose

<c:choose>
    <c:when test="${requestScope.height >180}">
        <h2>很高</h2>
    </c:when>
    <c:when test="${requestScope.height >185}">
        <h2>也不是特别高</h2>
    </c:when>
    <c:otherwise>
        <h2>这啥</h2>
    </c:otherwise>
</c:choose>

forEach标签

一.遍历1-10

begin 索引开始位置
end 索引结束位置
var 表示循环变量 (当前正在遍历到的数据)

<c:forEach begin="1" end="10" var="i">
    <h1>${i}  <h1>
</c:forEach>

二.遍历Object数组

<%
    request.setAttribute("arr",new String[]{"138","180","187"});
    %>

<c:forEach items="${requestScope.arr}" var="item">
    ${item}
</c:forEach>

三.遍历map集合

<%
        HashMap<String,Object> map = new HashMap<>();
        map.put("key1","value1");
        map.put("key2","value2");
        map.put("key3","value3");
        request.setAttribute("map",map);
    %>
<c:forEach items="${requestScope.map}" var="entry">
    ${entry} <br>
    ${entry.key} <br>
    ${entry.value} <br>
</c:forEach>

四.遍历List集合

存放JavaBean Student类
items 表示遍历的集合
var 表示遍历到的数据
begin、end 表示开始(结束)遍历的索引值
step 表示遍历的步长值i++
varStatus = “status” 表示当前遍历到的数据的状态 status.getCurrent().getIndex() .getCount() isFirst() isLast() getBegin() getEnd()

 <%
    List<Student> studentList = new ArrayList<Student>();
    for(int i = 1; i <= 10 ; i++) {
        studentList.add(new Student(1,"username"+i,"password"+i,21+i,"18013852015"));
    }

    request.setAttribute("stu",studentList);
    %>

<c:forEach items="${requestScope.stu}" var="stu" varStatus="status">
    ${stu}
    ${status.count}
</c:forEach>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值