java中使用方法:
LocalDateTime.ofInstant(effective, ZoneId.systemDefault()).toLocalDate().plusYears(lifeTime);
- effective: 表示日期字段
- .plusYears()方法表示累加年,lifeTime:表示累加的值,下图可以看到还有很多的方法:月、日、周…
- 日期字段相比可以使用 .isBefore()方法,判断某一日期是否在另一日期之前。如下工具类:
package com.mycompany.myapp.web.rest.utils;
import java.time.Instant;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.ZoneId;
public class DateCompareUtil {
public static boolean dateCompareTo(Instant effective, Integer lifeTime){
LocalDate startTime = LocalDateTime.ofInstant(effective, ZoneId.systemDefault()).toLocalDate().plusYears(lifeTime);
LocalDate endTime = LocalDateTime.ofInstant(Instant.now(), ZoneId.systemDefault()).toLocalDate();
return startTime.isBefore(endTime);
}
}
Mysql中使用:
加:date_add(param1 interval num param2)
减:date_sub(param1 interval num param2)
param1:表示操作的日期字段
param2:表示操作单位:年、月、日
num: 表示增值、减值的常量
系统当前时间往后推1个月:
运行效果:
系统当前时间往前推1个月:
运行效果:
通常使用都是做流失预警:对某一日期字段进行累加,算出有效期,拿来和系统时间对比,在到期的前X周进行预流失提示。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/115802.html