最近在搞一个删库的脚本,想要在低峰时段执行删库逻辑,时间段想做成任意配置化,定时任务调用一次,然后循环执行删库操作,写了个判断当前时间是否在某一时间段内的Demo,一起学习交流
/**
* @author yangkm
* @date 2023/6/9 11:31
**/
@Slf4j
public class BelongCalendarDemo {
public static void main(String[] args) {
String clearStartTime = "13:00";
String clearEndTime = "18:30";
String now = "14:00";
try {
SimpleDateFormat sdf = new SimpleDateFormat("HH:mm");
Date startTime = sdf.parse(clearStartTime);
Date endTime = sdf.parse(clearEndTime);
Date nowTime = sdf.parse(now);
Calendar date = Calendar.getInstance();
date.setTime(nowTime);
Calendar begin = Calendar.getInstance();
begin.setTime(startTime);
Calendar end = Calendar.getInstance();
end.setTime(endTime);
if (end.before(begin)) {
if (date.before(end)) {
date.add(Calendar.DATE, 1);
}
end.add(Calendar.DATE, 1);
}
if (date.after(begin) && date.before(end)) {
log.info("在范围内");
} else {
log.info("不在范围内");
}
} catch (Exception e) {
log.info("时间转换失败");
}
}
}