JSP格式化标签 formatDate日期格式转换

我们继续来讲格式化标签

formatDate

这个标签 作用是 将一个date时间类型的值转成指定格式的字符串
语法格式如下
在这里插入图片描述
value 是需要格式化的数据
type 是确定你要转什么类型的数据 这里有 日期型 时间型 日期+时间型
dateStyle 专门用来设置日期格式
timestyle 的话 是专门用来设置时间格式的
pattern 可以设置我们的自定义格式
timezone 是我们的一个时区
var 设置现域变量名 可以通过var定义的名称去取到现域对象的值
scope 设置域对象的访问 存储在哪个范围中

这边 我们jsp代码编写如下

<%@ page import="java.util.Date" %>
<%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
<%request.setCharacterEncoding("UTF-8");%>
<%@taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt"%>
<!DOCTYPE html>
<html>
<head>
    <title>JSP - Hello World</title>
</head>
<%
    request.setAttribute("date",new Date());
%>
${date}<br>
<fmt:formatDate value="${date}"/>
</body>
</html>

这里 我们先在request 作用域中定义了一个date键 值这里 我们直接new 了一个 date对象 意思是获取当前时间对象
然后 我们用EL表达式输出了这个这个值 以及用 formatDate 转换了这个值 这里 我们不声明var的话 他就会默认帮我们把转好的值输出出来
运行结果如下
在这里插入图片描述
可以看到 上面是 原本date对象的样子 当前时间的格式
然后 下面就是转好之后的值 明显看着舒服很多

我们可以用type控制它转的类型

<%@ page import="java.util.Date" %>
<%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
<%request.setCharacterEncoding("UTF-8");%>
<%@taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt"%>
<!DOCTYPE html>
<html>
<head>
    <title>JSP - Hello World</title>
</head>
<%
    request.setAttribute("date",new Date());
%>
${date}<br>
<fmt:formatDate value="${date}" type="date"/><br>
<fmt:formatDate value="${date}" type="time"/><br>
<fmt:formatDate value="${date}" type="both"/><br>
</body>
</html>

这里 我们设置了 type
date 表示日期类型 也是默认类型 你不设置type就是 date
time 时间类型 只要时间
both 时间加日期
运行结果如下
在这里插入图片描述
然后 我们还可以直接通过pattern去写一个自定义格式
编写代码如下

<%@ page import="java.util.Date" %>
<%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
<%request.setCharacterEncoding("UTF-8");%>
<%@taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt"%>
<!DOCTYPE html>
<html>
<head>
    <title>JSP - Hello World</title>
</head>
<%
    request.setAttribute("date",new Date());
%>
${date}<br>
<fmt:formatDate value="${date}" pattern="yyyy年MM月dd:hh时mm分ss秒"/>
</body>
</html>

这里 yyyy代表几几年 MM代表月份 dd代表日 hh时 mm分 ss秒
运行结果如下
在这里插入图片描述
然后 var和scope

<%@ page import="java.util.Date" %>
<%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
<%request.setCharacterEncoding("UTF-8");%>
<%@taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt"%>
<!DOCTYPE html>
<html>
<head>
    <title>JSP - Hello World</title>
</head>
<%
    request.setAttribute("date",new Date());
%>
${date}<br>
<fmt:formatDate value="${date}" pattern="yyyy年MM月dd:hh时mm分ss秒" var="fdate" scope="request"/><br>
转译数据${fdate}
</body>
</html>

参考代码如下
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值