1.官网地址 https://www.joda.org/joda-time/
2.依赖jar包
<!-- https://mvnrepository.com/artifact/joda-time/joda-time --> <dependency> <groupId>joda-time</groupId> <artifactId>joda-time</artifactId> <version>2.10.1</version> </dependency>3.测试代码 导这个包 import org.joda.time.DateTime
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); //当前时间 2019-08-04 00:27:45 minus方法根据当前时间减 plus方法根据当前时间加 Date date1=new DateTime().minusDays(3).toDate(); //2019-08-01 00:27:45 减3天 Date date2=new DateTime().minusHours(4).toDate(); //2019-08-03 20:27:45 减4小时 Date date3=new DateTime().minusMonths(3).toDate();//2019-05-04 00:27:45 减3个月 Date date5=new DateTime().minusMinutes(3).toDate();//2019-08-04 00:24:45 减3分钟 Date date6=new DateTime().minusSeconds(3).toDate();//2019-08-04 00:27:42 减3毫秒 Date date7=new DateTime().minusWeeks(3).toDate();//2019-07-14 00:27:45 减3周 Date date8=new DateTime().minusYears(3).toDate();//2016-08-04 00:27:45 减3年 Calendar instance = Calendar.getInstance(); DateTime dateTime1=new DateTime(new Date()); //构造DateTime对象,传Date或Calendar都行 DateTime dateTime2=new DateTime(instance); //不能直接format DateTime对象,必须toDate System.out.println(sdf.format(dateTime1.toDate())); //2019-08-04 00:42:45 System.out.println(sdf.format(dateTime2.toDate())); //2019-08-04 00:42:45 int year = dateTime1.getYear(); //2019 年 int month = dateTime1.getMonthOfYear(); //8 月 int week = dateTime1.getDayOfWeek(); //7 星期几 int hour = dateTime1.getMinuteOfHour(); //52 //分 int second = dateTime1.getDayOfMonth(); //4 //天 DateTime plusDays = dateTime1.plusDays(2); //2019-8-06 //两天后 DateTime dateTime = dateTime1.plusMonths(2); // 2019-10-06 int century = dateTime1.getEra(); //1 int era = dateTime1.getWeekyear(); //2019 DateTime withYear = dateTime1.withYear(2000); //2000-08-04 00:57:45 设置年份 月天时分秒为当前年份月天时分秒 DateTime twoHoursLater=dateTime1.plusDays(2); //2019-08-06 00:57:45