提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


场景

调用第三方接口时的token当天有效,所以将token存进redis要设置当天结束时失效。


一、步骤

1.获取当天结束时间方法

DateUtils.java中新建方法
设置时间为当天的23点59分59秒999毫秒
代码如下:

/*
     * 获取当前天的结束时间
     */
    public static Date getEndTime(Date date) {
        Calendar day = Calendar.getInstance();
        day.setTime(date);
        day.set(Calendar.HOUR_OF_DAY, 23);
        day.set(Calendar.MINUTE, 59);
        day.set(Calendar.SECOND, 59);
        day.set(Calendar.MILLISECOND, 999);
        return day.getTime();
    }

2.时间距离当天结束时间的秒方法

DateUtils.java中新建方法
代码如下:

/**
     * 时间距离当天结束时间的秒
     *
     * @param nowDate
     * @return
     */
    public static long getDayEndSecond(Date nowDate) {

        // 获得两个时间的毫秒时间差异
        long diff = DateUtils.getEndTime(new Date()).getTime() - nowDate.getTime();
        //计算两个时间之间差了多少秒
        long second = diff / 1000;
        return second;
    }

3.存进redis

代码如下:

redisUtils.set("tokenByJy",(String)tokenMap.get("sc"), DateUtils.getDayEndSecond(new Date()));
Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐