DateUtils.java 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. package cn.iocoder.dashboard.util.date;
  2. import java.time.Duration;
  3. import java.util.Calendar;
  4. import java.util.Date;
  5. /**
  6. * 时间工具类
  7. */
  8. public class DateUtils {
  9. public static final String FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND = "yyyy-MM-dd HH:mm:ss";
  10. public static Date addTime(Duration duration) {
  11. return new Date(System.currentTimeMillis() + duration.toMillis());
  12. }
  13. public static boolean isExpired(Date time) {
  14. return System.currentTimeMillis() > time.getTime();
  15. }
  16. public static long diff(Date endTime, Date startTime) {
  17. return endTime.getTime() - startTime.getTime();
  18. }
  19. /**
  20. * 创建指定时间
  21. *
  22. * @param year 年
  23. * @param mouth 月
  24. * @param day 日
  25. * @return 指定时间
  26. */
  27. public static Date buildTime(int year, int mouth, int day) {
  28. return buildTime(year, mouth, day, 0, 0, 0);
  29. }
  30. /**
  31. * 创建指定时间
  32. *
  33. * @param year 年
  34. * @param mouth 月
  35. * @param day 日
  36. * @param hour 小时
  37. * @param minute 分钟
  38. * @param second 秒
  39. * @return 指定时间
  40. */
  41. public static Date buildTime(int year, int mouth, int day,
  42. int hour, int minute, int second) {
  43. Calendar calendar = Calendar.getInstance();
  44. calendar.set(Calendar.YEAR, year);
  45. calendar.set(Calendar.MONTH, mouth - 1);
  46. calendar.set(Calendar.DAY_OF_MONTH, day);
  47. calendar.set(Calendar.HOUR_OF_DAY, hour);
  48. calendar.set(Calendar.MINUTE, minute);
  49. calendar.set(Calendar.SECOND, second);
  50. calendar.set(Calendar.MILLISECOND, 0); // 一般情况下,都是 0 毫秒
  51. return calendar.getTime();
  52. }
  53. }