目前我正在尝试让我的java程序重置一些值。重置这些值的触发因素将是新一天的开始。例如,如果日期是 2015 年 1 月 24 日,我会打开程序来执行我的操作,然后关闭程序。如果我在 24/1/2015 打开该程序,它不会重置该程序。但是,如果我在 2015 年 1 月 25 日打开该程序,它将重置 MySQL 数据库中的值。
所以。如何验证时间/日期以重置数据库中的值?
最佳答案
使用 getTodayAtMidnight() 方法来计算您可以设置值的下一个有效时间。将此值存储在表中。然后使用 'now.after(nextSetDate)' 看看它是否返回 'true'。如果是这样,您可以重置值并存储下一个日期。如果它返回 false,则您仍处于同一日期,不应重置值。如果您有任何疑问,请告诉我。
public static void main(String[] args) {
Date nextSetDate = getTodayAtMidnight();
System.out.println(nextSetDate);
Date now = new Date();
System.out.println(now.after(nextSetDate));
}
public static Date getTodayAtMidnight() {
Calendar c = Calendar.getInstance();
c.set(Calendar.HOUR_OF_DAY, 0);
c.set(Calendar.MINUTE, 0);
c.set(Calendar.SECOND, 0);
c.set(Calendar.MILLISECOND, 0);
c.add(Calendar.DAY_OF_YEAR, 1);
return c.getTime();
}
关于java - 根据时间重置值 MySQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34971635/