【JSTL】 # JSTL的简单使用:(1)核心标签 c(2)格式化标签 fmt (3)函数

1. 核心标签

核心标签是JSTL最常用的标签,想使用的时候,直接引入即可:

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>

1.1 <c:if>

相当于 java 中的 if 语句

<c:if test="判断条件" var="存储结果的变量" scope="var属性的作用域">
	只有在判断条件为 true 时,才执行这里面的语句
</c:if>

例子

<c:if test="${name == 'Tom'}">
	<h1>hello, Tom!</h1>
</c:if>

1.2 <c:choose> <c:when> <c:otherwise>

相当于 java 中的 switch 语句

<c:choose>
	<c:when test="判断条件">
        。。。。。
    </c:when>
    <c:when test="判断条件">
        。。。。。
    </c:when>
    <c:otherwise> <!--当以上条件都不成立时,执行otherwise-->
    	。。。。。
    </c:otherwise>
</c:choose>

1.3 <c:forEach>

相当于 java 中的 循环

<c:forEach 
           items="要被循环的信息" 
           step="每一次迭代的步长"
           var="当前循环到的变量名称"
           varStatus="循环状态的变量名称"
           [ begin="开始的元素:0,1..." ]
           [ end="最后一个元素" ]>
</c:forEach>

例子

<c:forEach items="${students}" var="stud" varStatus="studStatus">
	序号:${studStatus.index}
    名称:${stud.name}
</c:forEach>

2. 格式化标签

用来格式化并输出文本、日期、时间、数字

<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>

2.1 <fmt:formatNumber>

使用指定的格式或精度 格式化数字

<fmt:formatNumber
                  value="要显示的数字"
                  type="NUMBER, CURRENCY或PERCENT"
                  pattern="指定一个自定义的格式化模式用于输出"
                  maxIntegerDigits="整型数最大的位数"
                  maxFractionDigits="小数点后最大的位数">
</fmt:formatNumber>

例子

<fmt:formatNumber value="${balance}" type="currency"> </fmt:formatNumber>

<fmt:formatNumber value="${balance}" type="number" maxIntegerDigits="3"></fmt:formatNumber>

<fmt:formatNumber value="${balance}" type="number" pattern="###.##E0"></fmt:formatNumber>

2.2 <fmt:formatDate>

使用不同的方式格式化日期

<fmt:formatDate
                value="要显示的日期"
                pattern="自定义的格式"
                type="DATE, TIME或BOTH">
</fmt:formatDate>

例子

<fmt:formatDate pattern="yyyy-MM-dd" value="${date}"></fmt:formatDate>

2.3 <fmt:parseNumber>

字符串 格式化为数字

3. JSTL函数

大部分是通用的字符串处理函数

注意:传递参数时,如果是用 ${}获取的,字符串需要加 ''

<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>

3.1 fn:length()

// 获取长度
${fn:length(字符串或list)}  

其他函数类似:

  • ${fn:contains(原始字符串, 要查找的子字符串)} 一个字符串是否包含子串
  • ${fn:containsIgnoreCase(原始字符串, 要查找的子字符串)} 忽略大小写
  • ${fn:endsWith(原始字符串, 要查找的子字符串)} 确定一个字符串是否以指定后缀结尾
  • ${fn:startsWith(<原始字符串>, <搜索的前缀>)} 确定一个字符串是否以指定前缀开始
  • ${fn:escapeXml(要转义标记的文本,类似<abc> )} 跳过可以作为XML标记的字符
  • ${fn:indexOf(原始字符串, 子字符串)} 返回一个字符串中指定子串的位置
  • ${fn:join(数组, 分隔符)} 将数组中的元素使用指定的分隔符连接成一个字符串
  • ${fn:replace(原始字符串,被替换的字符串,要替换的字符串)} 将字符串中所有指定的子串用另外的字符串替换
  • ${fn:split(<待分隔的字符串>, <分隔符>)} 将一个字符串用指定的分隔符分裂为一个子串数组
  • ${fn:substring(<string>, <beginIndex>, <endIndex>)} 返回字符串中指定开始和结束索引的子串
  • ${fn:trim(<string>)} 将字符串两端的空白符移除
  • ${fn:substringAfter(<string>, <substring>)} 返回字符串中指定子串后面的部分
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

LRcoding

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值