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

相关推荐
咖啡八杯10 小时前
GoF设计模式——策略模式
java·后端·spring·设计模式
用户1285261160218 小时前
我把祖传Java项目重构后,接口响应从3s砍到了200ms,只改了这几行代码
java
Linsk18 小时前
组件 = 模板 + 业务逻辑
java·前端·vue.js
星沉远浦19 小时前
用Gemini高效解决Java代码报错难以定位的问题
java
用户298698530141 天前
Word 文档字符级格式化:Java 实现方案详解
java·后端
Sokach10151 天前
Linux Shell 脚本从零到能用:一个新手的一天学习总结
linux
笨鸟飞不快1 天前
从单个服务到集群:一次完整的性能排查复盘
java·前端
荣码1 天前
用Streamlit给AI应用套个界面,10行代码出Web页面
java·python
SamDeepThinking1 天前
Java微服务练习方式
java·后端·微服务
朦胧之1 天前
AI 编程-老项目改造篇
java·前端·后端