JSTL(一)-- JSTL的快速入门

JSTL是JSP中的标准标签库,由Apache实现,包括Core、Fmt、Functions、SQL和XML五个部分。使用JSTL需导入相关jar包并引入标签库。文章详细介绍了Core库中最常用的三个标签:if语句用于条件判断,choose语句类似于switchcase结构,foreach语句用于循环遍历,提供了灵活的迭代操作。
摘要由CSDN通过智能技术生成

目录

1.  JSTL的概述:

2.  JSTL的使用前提:

3.  JSTLL核心标签库(最常用到的3个标签)

3.1  if语句

3.2  choose语句

3.3  foreeach语句


1.  JSTL的概述:

JSTL的全称是:JSP Standard Tag Libary。它是JSP中标准的标签库。它是由Apache实现的。

它由以下5个部分组成:

组成作用说明
Core核心标签库。通用逻辑处理
Fmt国际化有关。需要不同地域显示不同语言时使用
FunctionsEL函数EL表达式可以使用的方法
SQL操作数据库。不用
XML操作XML。不用

2.  JSTL的使用前提:

要想使用JSTL标签库,在javaweb工程中需要导入坐标。首先是在工程的WEB-INF目录中创建一个lib目录,接下来把jstl的jar拷贝到lib目录中,最后在jar包上点击右键,然后选择【Add as Libary】添加。如下图所示:

创建JSP, 引入标签库<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<html>
<head>
    <title></title>
</head>
<body>
</body>
</html>

3.  JSTLL核心标签库(最常用到的3个标签)

标签名称功能分类分类作用
<c:if>流程控制核心标签库用于判断
<c:choose> ,<c:when>,<c:otherwise>流程控制核心标签库用于多个条件判断
<c:foreache>迭代操作核心标签库用于循环遍历

3.1  if语句

属性:

  • test 为必须属性,接受boolean表达式  
  • 如果表达式为true,则显示if标签体内容,如果为false,则不显示标签体内容 
  • 一般情况下,test属性值会结合el表达式一起使用

注意:

  • c:if标签没有else情况,想要else情况,则可以在定义一个c:if标签
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<html>
<head>
    <title>$Title$</title>
</head>
<body>
    <%
        request.setAttribute("msg","");
        request.setAttribute("num",10);
    %>

    <c:if test="${empty msg}">
        字符串为空串
    </c:if>

    <c:if test="${not empty msg}">
        字符串不为空串
    </c:if>


    <c:if test="${num%2==0}">
        数字是偶数
    </c:if>

    <c:if test="${num%2!=0}">
        数字是奇数
    </c:if>

</body>
</html>

3.2  choose语句

choose:

  1. 使用choose标签声明 相当于switch声明。
  2. 使用when标签做判断 相当于case。
  3. 使用otherwise标签做其他情况的声明 相当于default。
<%
    request.setAttribute("num",10);
%>

<c:choose>
    <c:when test="${num==1}">周一</c:when>
    <c:when test="${num==2}">周二</c:when>
    <c:when test="${num==3}">周三</c:when>
    <c:when test="${num==4}">周四</c:when>
    <c:when test="${num==5}">周五</c:when>
    <c:when test="${num==6}">周六</c:when>
    <c:when test="${num==7}">周日</c:when>
    <c:otherwise>数字有误!</c:otherwise>
</c:choose>

3.3  foreeach语句

foreeach:

  • begin:开始值
  • end:结束值
  • var:临时变量
  • step:步长
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<html>
<head>
    <title>Title</title>
</head>
<body>

<%--
    begin:开始值
    end:结束值
    var:临时变量
    step:步长,每次加多少
--%>
<c:forEach begin="1" end="10" var="i" step="2">
    ${i}--
</c:forEach>

</body>
</html>

foreeach操作list集合时:

  • items:要遍历那一个容器。
  • var:每次遍历出来的对象。
  • varStatus:包含着当前对象的编号,索引等信息。
  • index:容器中元素的索引,从0开始。
  • count:循环次数,从1开始。
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<html>
<head>
    <title>Title</title>
</head>
<body>

<%
    ArrayList<String> list = new ArrayList<>();
    list.add("德玛西亚");
    list.add("洛克萨斯");
    list.add("艾欧里亚");
    list.add("均衡教派");
    list.add("暗影岛");

    request.setAttribute("list",list);
%>

<br>
<%--
    items:要遍历那一个容器
    var : 每次遍历出来的对象
    varStatus:包含着当前对象的编号,索引等信息
--%>
<c:forEach items="${list}" var="s" varStatus="x">
    ${x.index}--${x.count}--${s}<br>
</c:forEach>

</body>
</html>

  如果对你有帮助,请帮我点一下赞,我才有动力继续创作,谢谢!

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值