java日期常用操作

java 复制代码
 @Test
    public void validateDateUtils(){
        // 1 字符串转换日期
        Date result = DateUtil.parse("2023-08-01", com.alibaba.excel.util.DateUtils.DATE_FORMAT_10);
        log.info("result : [{}]" , result);

        // 2 日期转换字符串
        final Date date = new Date();
        String formatStr = DateFormatUtils.format(date, com.alibaba.excel.util.DateUtils.DATE_FORMAT_19);
        log.info("formatStr : [{}]" , formatStr);

        // 3 获取当前时间,格式为yyyy-MM-dd,yyyy-MM-dd HH:mm:ss,yyyyMMddHHmmss
        final String formatYMR = DateFormatUtils.format(date, com.alibaba.excel.util.DateUtils.DATE_FORMAT_10);
        log.info("formatYMR : [{}]" , formatYMR);
        final String formatYMRSFM = DateFormatUtils.format(date, com.alibaba.excel.util.DateUtils.DATE_FORMAT_19);
        log.info("formatYMRSFM : [{}]" , formatYMRSFM);
        final String formatYMRSFMS = DateFormatUtils.format(date, com.alibaba.excel.util.DateUtils.DATE_FORMAT_14);
        log.info("formatYMRSFMS : [{}]" , formatYMRSFMS);

        // 4 日期相减
        final long resultTime = result.getTime();
        final long dateTIme = date.getTime();
        final long diffInDays = (dateTIme - resultTime) / (1000 * 60 * 60 * 24);
        log.info("diffInDays : [{}]" , diffInDays);

        // 5 日期加减操作
        final int compareDays = cn.hutool.core.date.DateUtil.compare(date, result);
        log.info("compareDays : [{}]" , compareDays);
        final Date addDate = DateUtils.addDays(new Date(), 1);
        log.info("addDate : [{}]" , addDate);

        // 6 日期转换时间戳
        final long current = cn.hutool.core.date.DateUtil.current();
        final long currentTimeMillis = System.currentTimeMillis();
        log.info("currentTimeMillis : [{}]" , currentTimeMillis);
        log.info("current : [{}]" , current);
        // 7 util.date转换sql.date
        Timestamp timestamp = new Timestamp(currentTimeMillis);
        log.info("timestamp : [{}]" , timestamp);

    }

22:49:41.918 main INFO com.geekmice.springbootselfexercise.NoDaoTest - result : Tue Aug 01 00:00:00 CST 2023

22:49:42.102 main INFO com.geekmice.springbootselfexercise.NoDaoTest - formatStr : 2023-08-09 22:49:41

22:49:42.103 main INFO com.geekmice.springbootselfexercise.NoDaoTest - formatYMR : 2023-08-09

22:49:42.103 main INFO com.geekmice.springbootselfexercise.NoDaoTest - formatYMRSFM : 2023-08-09 22:49:41

22:49:42.106 main INFO com.geekmice.springbootselfexercise.NoDaoTest - formatYMRSFMS : 20230809224941

22:49:42.106 main INFO com.geekmice.springbootselfexercise.NoDaoTest - diffInDays : 8

22:49:42.121 main INFO com.geekmice.springbootselfexercise.NoDaoTest - compareDays : 1

22:49:42.121 main INFO com.geekmice.springbootselfexercise.NoDaoTest - addDate : Thu Aug 10 22:49:42 CST 2023

22:49:42.122 main INFO com.geekmice.springbootselfexercise.NoDaoTest - currentTimeMillis : 1691592582122

22:49:42.122 main INFO com.geekmice.springbootselfexercise.NoDaoTest - current : 1691592582122

22:49:42.123 main INFO com.geekmice.springbootselfexercise.NoDaoTest - timestamp : 2023-08-09 22:49:42.122

相关推荐
长谷深风1111 分钟前
好的 Tool Schema,不是字段越全越好
java·大数据·人工智能·ai agent·agent工作流·智能体设计·ai产品设计
IT 行者3 分钟前
用 HiddenHttpMethodFilter 解决浏览器不支持 PUT/DELETE/PATCH 的问题
java·spring
晚安code7 分钟前
Redis 内存淘汰策略实战:什么时候淘汰、怎么选、怎么防缓存击穿
java·redis·缓存
caimouse8 分钟前
ReactOS 窗口系统分析(13):滚动条 — scrollbar.c + scrollex.c
c语言·开发语言·reactos
Sagittarius_A*8 分钟前
【好靶场】PHP反序列化入门练习2
开发语言·web安全·信息安全·php·代码审计·反序列化
2401_8685347815 分钟前
企业信息安全建设
linux·网络协议·beautifulsoup
goyeer21 分钟前
Liunx日志管理与journalctl
java·linux·运维·服务器·运维开发·信息化·信息化企业管理
NoteStream24 分钟前
MATLAB绘制带置信区间的折线散点图(科研绘图模板)
开发语言·matlab
酷可达拉斯25 分钟前
自动化运维-Ansible Role综合应用案例-基于LNMP部署wordpress
linux·运维·服务器·自动化·ansible
拂拉氏28 分钟前
【Linux】 编译与动静态库相关
linux·编译·动静态库