DateMonthUtils.java 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  1. package com.ydtech.utils;
  2. import java.sql.Timestamp;
  3. import java.text.SimpleDateFormat;
  4. import java.util.Calendar;
  5. import java.util.Date;
  6. import java.util.GregorianCalendar;
  7. /**
  8. * @ClassName DateMonthUtils
  9. * @Description: TODO
  10. * @Author
  11. * @Date 2021/6/17
  12. **/
  13. public class DateMonthUtils {
  14. //获取本月的开始时间
  15. public static Date getBeginDayOfMonth() {
  16. SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
  17. Calendar calendar = Calendar.getInstance();
  18. calendar.set(getNowYear(), getNowMonth() - 1, 1);
  19. return getDayStartTime(calendar.getTime());
  20. }
  21. //获取本月的结束时间
  22. public static Date getEndDayOfMonth() {
  23. Calendar calendar = Calendar.getInstance();
  24. calendar.set(getNowYear(), getNowMonth() - 1, 1);
  25. int day = calendar.getActualMaximum(5);
  26. calendar.set(getNowYear(), getNowMonth() - 1, day);
  27. return getDayEndTime(calendar.getTime());
  28. }
  29. //获取本年的开始时间
  30. public static Date getBeginDayOfYear() {
  31. Calendar cal = Calendar.getInstance();
  32. cal.set(Calendar.YEAR, getNowYear());
  33. cal.set(Calendar.MONTH, Calendar.JANUARY);
  34. cal.set(Calendar.DATE, 1);
  35. return getDayStartTime(cal.getTime());
  36. }
  37. //获取本年的结束时间
  38. public static Date getEndDayOfYear() {
  39. Calendar cal = Calendar.getInstance();
  40. cal.set(Calendar.YEAR, getNowYear());
  41. cal.set(Calendar.MONTH, Calendar.DECEMBER);
  42. cal.set(Calendar.DATE, 31);
  43. return getDayEndTime(cal.getTime());
  44. }
  45. //获取某个日期的开始时间
  46. public static Timestamp getDayStartTime(Date d) {
  47. Calendar calendar = Calendar.getInstance();
  48. if (null != d) {
  49. calendar.setTime(d);
  50. }
  51. calendar.set(calendar.get(Calendar.YEAR), calendar.get(Calendar.MONTH), calendar.get(Calendar.DAY_OF_MONTH), 0, 0, 0);
  52. calendar.set(Calendar.MILLISECOND, 0);
  53. return new Timestamp(calendar.getTimeInMillis());
  54. }
  55. //获取某个日期的结束时间
  56. public static Timestamp getDayEndTime(Date d) {
  57. Calendar calendar = Calendar.getInstance();
  58. if (null != d) {
  59. calendar.setTime(d);
  60. }
  61. calendar.set(calendar.get(Calendar.YEAR), calendar.get(Calendar.MONTH), calendar.get(Calendar.DAY_OF_MONTH), 23, 59, 59);
  62. calendar.set(Calendar.MILLISECOND, 999);
  63. return new Timestamp(calendar.getTimeInMillis());
  64. }
  65. public static Integer getNowYear() {
  66. Date date = new Date();
  67. GregorianCalendar gc = (GregorianCalendar) Calendar.getInstance();
  68. gc.setTime(date);
  69. return Integer.valueOf(gc.get(1));
  70. }
  71. public static int getNowMonth() {
  72. Date date = new Date();
  73. GregorianCalendar gc = (GregorianCalendar) Calendar.getInstance();
  74. gc.setTime(date);
  75. return gc.get(2) + 1;
  76. }
  77. }