JSTL中c标签和fmt标签

c标签

表达式操作 out、set、remove、catch

流程控制 if、choose、when、otherwise

迭代操作 forEach、forTokens

URL操作 import、param、url、redirect

Set标签

<c:set> 主要用来将变量存储至JSP范围中 或是JavaBean的属性或Map对象中

名称说明是否必须写默认值
Value要被存储的值
var存入的变量名称
scopevar变量的JSP范围Page
targetJavaBean或Map对象
property指定target对象的属性

<c:out>主要用来显示数据的内容

名称说明是否必须写默认值
value需要显示出来的值
default如果value的值为null,则显示default的值
escapeXml是否转换特殊字符,如:<转换成 & lt;True

<c:remove> 主要负责移除变量

名称说明是否必须写默认值
Var欲移除的变量名称
Scopevar变量的jsp范围Page

<c:if> 主要用于进行if判断,如果为true,则输出标签体中的内容

名称说明是否必须写默认值
Test表达式的结果为true,则执行体内容,false则相反
var如果 用来存储test运算的结果(true或false)
scopeVar变量的JSP范围page

<c:choose>,<c:when>,<c:otherwise> 作用相当于if-else

名称说明必须默认
test如果表达式的结果为true,则执行体内容,false则相反

<c:forEach> 循环控制,它可以将数组,集合(Collection)中的成员循序浏览一遍。

名称说明必须默认值
var用来存放现在指定的成员
items被迭代的集合对象
varStatus用来存放现在指的相关成员信息
begin开始的位置0
end结束的位置最后一个成员
step每次迭代的间隔数1

fmt标签

1、fmt:formatDate 作用:将日期类型格式化为指定模式的字符串

属性

value:将要被格式化的数据

pattern:格式化的模式,与SimpleDateFormat的参数设置一样

var:格式化后的字符串所要存放的变量,若不指定var,则会将格式化的结果直接显示在页面

scope:变量存放的域属性空间,默认page

type:其取值为date、time、both,表示给出的value是日期、时间、还是两者都包含,默认是date

2、fmt:parseDate 作用:用于将指定字符串转化为日期类型

<fmt:parseDate value="${now }" pattern="yyyy-MM-dd" var="today"/>

Value服务器获取的时间

Pattern:转换的格式

Var:页面显示的变量

3、fmt:formatNumber 按照指定格式对数字进行格式化

属性

maxIntegerDigits:整数部分最多的位数

minIntegerDigits:整数部分最少的位数

maxFrctionDigits:小数部分最多的位数

minFrctionDigits:小数部分最少的位数

var:存储格式化结果的变量

scope:var属性的作用域

integerOnly:是否只解析整型数true或者浮点数false

示例代码

<%@ page import="java.util.*" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<html>
<head>
    <title>testjstl</title>
</head>
<body>
<!-- c标签里面的输出语句 -->
  <c:out value="c 标签输出"></c:out><br>
<!-- c标签 : 可以通过该标签创建变量,var为变量名 value为变量值 scope为变量域-->
  <c:set var="v1" value="testu1" scope="page"></c:set>
  u1=${v1}<br>
<%
int age = 20;
pageContext.setAttribute("age", age);
%>
  <!-- if语句,test语句里面填写判断语句。 -->
<c:if test="${age < 18}">
  未成年
</c:if>
<c:if test="${age >= 18}">
  成年
</c:if><br>

<%
  Set set = new HashSet<>();
  set.add("set_1");
  set.add("set_2");
  set.add("set_3");
  set.add("set_4");
  pageContext.setAttribute("set", set);
%>
<!-- c标签里面的循环语句 items是要遍历的变量, var每次取出来的变量名 -->
<c:forEach items="${set}" var="i">
  ---${i}<br>
</c:forEach>

<%
  int sex = 1;
  pageContext.setAttribute("sex", sex);
%>
<c:choose>
  <c:when test="${sex==0}">女</c:when>
  <c:when test="${sex==1}">男</c:when>
  <c:otherwise>中性</c:otherwise>
</c:choose><br>
<%
  Date date = new Date();
  pageContext.setAttribute("date", date);
%>
${date}<br>
<fmt:formatDate value="${date}" pattern="yyyy-MM--dd hh:mm:ss"></fmt:formatDate>


</body>
</html>

  • 16
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值