Java EE开发技术(第七章:JSTL标签库)

目录

一、JSTL概述

JSTL标签库分类

二、JSTL核心标签库

1、变量设置和删除标签

2、流程控制标签

3、其他标签

开发步骤

语法

1、单条件判断

2、多条件判断

3、循环语句

指定遍历范围

遍历集合/数组

分割字符串

4.其他标签

重定向

导入资源

三、JSTL格式化标签库

1、引入格式化标签库

2、使用格式化标签

语法

[- 日期格式化标签](#- 日期格式化标签)

[- 解析日期标签](#- 解析日期标签)

[- 根据不同的区域设置对数字进行本地化显示](#- 根据不同的区域设置对数字进行本地化显示)


EL表达式可以简化脚本表达式,但脚本片段代码却无法简化

一、JSTL概述

  • JSTL(Java Standard Tag Library), java标准标签库,apache提供的一组标签库
  • JSTL用于替换JSP页面中的JSP脚本代码,通常结合EL表达式一起使用,达到简化JSP页面开发的目的

JSTL标签库分类

二、JSTL核心标签库

JSTL Core核心标签库包含负责流程控制、变量管理等功能的核心标签

1、变量设置和删除标签

  • <c:set>
  • <c:remove>

2、流程控制标签

  • <c:if> - 单条件判断
  • <c:choose>,<c:when>,<c:otherwise> -- 多条件判断
  • <c:forEach> - 循环
  • <c:forTokens> --分割字符串

3、其他标签

  • <c:redirect> - 重定向
  • <c:import> - 导入资源

开发步骤

在项目的WEB-INF/lib目录下引入jstl jar包(相关jar包可以在资源中找到,选择与sql版本对应的jar包)

在JSP页面中引入核心标签库 <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>,然后就可以使用核心标签库的语法了

语法

1、单条件判断

java 复制代码
<c:if test="${条件语句}">      
    条件语句成立则执行,否则不执行。
</c:if>

2、多条件判断

java 复制代码
<c:choose>    
     <c:when test="${条件语句1}"> 
        代码块1     
    </c:when>     
    <c:when test="${条件语句2}">        
        代码块2     
    </c:when>     
    <c:otherwise> 
        所有条件语句都不成立时执行的代码块
    </c:otherwise> 
</c:choose>

3、循环语句

指定遍历范围
java 复制代码
<c:forEach var="i" begin="起始值" end="结束值" step="步长">
     <p>数值: ${i}</p> 
</c:forEach>
遍历集合/数组
java 复制代码
<c:forEach var="变量名" items="${集合名}">
    ${变量名}
</c:forEach>
分割字符串
java 复制代码
<c:forTokens items="字符串" delims="分隔符" var="变量名">     
    ${变量名} 
</c:forTokens>

4.其他标签

重定向
java 复制代码
<c:redirect url="重定向后资源路径" />
导入资源
java 复制代码
<c:import url="要导入的资源路径" />

三、JSTL格式化标签库

JSTL格式化标签库提供了关于格式化、解析相关的标签,

例如:日期格式化、数字格式化

1、引入格式化标签库

2、使用格式化标签

  • <fmt:formatDate> - 日期格式化标签
  • <fmt:parseDate> - 解析日期标签

语法

<fmt:formatDate> - 日期格式化标签

java 复制代码
<fmt:formatDate value="${日期变量}" pattern="日期格式" />

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

<fmt:parseDate> - 解析日期标签

java 复制代码
<fmt:parseDate value="${日期字符串}" pattern="日期格式" var="变量名" />

例如: <fmt:parseDate value="${dateStr}" pattern="yyyy-MM-dd" var="parsedDate" />

<fmt:formatNumber> - 根据不同的区域设置对数字进行本地化显示

重要属性

  • value:要格式化的数字
  • type:格式化的类型,number、currency(货币)或percent(百分比)
  • currencySymbol:当type为currency时,可以指定货币符号(如$、¥等)
  • pattern:自定义格式模式,类似于Java中的DecimalFormat
  • maxFractionDigits:最大小数位数
  • minFractionDigits:最小小数位数

设置页面本地环境

  • <fmt:setLocale value="en_US"/> 设置页面的本地化环境为美国英语(en_US)
  • <fmt:setLocale value="zh_CN"/>设置页面的本地化环境为简体中文(zh_CN)
相关推荐
郑州光合科技余经理21 分钟前
同城商城源码:商品库和订单库怎么随包交付
android·java·开发语言·后端·uni-app·php·ai编程
\光辉岁月/22 分钟前
4.String类
java·面向对象·stringbuilder·string·stringbuffer·字符串类
蚰蜒螟43 分钟前
从 Java SocketChannel 到 TCP 挥手:一次 close() 的完整调用链与引用计数解析
java·python·tcp/ip
damoluomu1 小时前
国产 Java CMS 的协议和坑,讲清楚
java·开发语言
Wang's Blog1 小时前
Java 项目实战: 交友项目 - 黑名单:分页查询黑名单
java·开发语言·交友
蚰蜒螟1 小时前
从 Java write 到磁盘扇区:一次写入操作的完整内核穿越之旅
java·开发语言
en.en..1 小时前
volatile 关键字整理(嵌入式 C 标准)
java·开发语言
captain3761 小时前
Spring IoC和DI(2)
java·后端·spring
Shaoshing1 小时前
高可用与核心概念
java·mq