Java Web-JSTL

Posted 别再闹了

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java Web-JSTL相关的知识,希望对你有一定的参考价值。

Java Web-JSTL

概念

Java Server Pages Tag Library:JSP标准标签库

是由Apache组织提供的开源、免费JSP标签

用于简化和替换JSP页面上的Java代码,用标签代替Java代码,以便于前端的工作。

使用步骤

  1. 导入JSTL相关的jar包
  2. 引入标签库:taglib指令: <%@ taglib %>
  3. 使用标签

常用JSTL标签

  1. if

    <c:if

    1. 属性

      • test:必须属性,接受字符串类型的boolean表达式,如果表达式结果为true,则显示标签体内容。反之则不显示标签体内容

        一般情况下,test属性值会结合EL表达式一起使用:

        <%
        List list=new ArrayList();
        list.add("aaa");
        request.setAttribute("list",list);
        %>
        <c:if test="${not empty list}">
        遍历集合</c:if>

    >标签体内容</c:if>

  2. choose:类似于Java中的switch语句

    举例:

    <%
    request.setAtrrbute("number",51);
    %>
    <c:choose>
     <c:when test="${number==1}">星期一</c:when>
     <c:when test="${number==2}">星期二</c:when>
        <c:when test="${number==3}">星期三</c:when>
        <c:when test="${number==4}">星期四</c:when>
        <c:when test="${number==5}">星期五</c:when>
        <c:when test="${number==6}">星期六</c:when>
        <c:when test="${number==7}">星期日</c:when>
        <c:otherwise>数字输入有误</c:otherwise>
    </c:choose>
  3. foreach:相对于java中的for语句

    举例:

    1. 完成重复操作

      属性:

      1. begin:开始值

      2. end:结束值

        开始值和结束值都包括

      3. var:临时变量

      4. step:步长

      5. varStatus:循环状态对象

        • index:容器中元素的索引,从0开始
        • count:循环次数,从1开始
    <c:forEach begin="1" end="10" var="i" step="2" varStatus="s">
        ${i} ${s.index} ${s.count}<br>
    </c:forEach>

    像上面这个例子,s.index输出的和i一样,都是1,3,5,7,9,。而s.count输出的是1,2,3,4,5

    1. 遍历容器

      属性:

      1. items:容器对象
      2. var:容器中元素的临时变量
      3. varStatus:循环状态对象
        • index:容器中元素的索引,从begin开始
        • count:循环次数,从1开始
      <%
        List list=new ArrayList();
        list.add("aaa");
        list.add("aaa");
        list.add("aaa");
        request.setAttribute("list",list);
      %>
      <c:forEach items="${list}" var="str" varStatus="s">
      ${s.index} ${s.count} ${str}<br>
      </c:forEach>

      最终输出的结果是:

      0 1 aaa

      1 2 aaa

      2 3 aaa

以上是关于Java Web-JSTL的主要内容,如果未能解决你的问题,请参考以下文章

java 代码片段【JAVA】

# Java 常用代码片段

# Java 常用代码片段

创建片段而不从 java 代码实例化它

如何重构这个 Java 代码片段

java 反射代码片段