diff --git a/hutool-core/src/main/java/cn/hutool/core/date/DateUtils8Transform.java b/hutool-core/src/main/java/cn/hutool/core/date/DateUtils8Transform.java deleted file mode 100644 index 928222710..000000000 --- a/hutool-core/src/main/java/cn/hutool/core/date/DateUtils8Transform.java +++ /dev/null @@ -1,100 +0,0 @@ -package cn.hutool.core.date; - -import java.time.*; -import java.util.Date; - -/** - * LocalDate和Date的互换 - *
- * java.sql.Date、java.sql.Timestamp、java.util.Date这些类都不好用,很多方法都过时了。 - * Java8里面新出来了一些API,LocalDate、LocalTime、LocalDateTime 非常好用 - * 如果想要在JDBC中,使用Java8的日期LocalDate、LocalDateTime,则必须要求数据库驱动的版本不能低于4.2 - * - * @author dazer - * @date 2018/2/8 下午2:31 - * @see DateUtil - */ -public class DateUtils8Transform { - - private DateUtils8Transform() { - } - - /** - * 01. java.util.Date --> java.time.LocalDateTime - */ - public static LocalDateTime date2Java8DateTime(Date date) { - Instant instant = date.toInstant(); - ZoneId zone = ZoneId.systemDefault(); - return LocalDateTime.ofInstant(instant, zone); - } - - /** - * 02. java.util.Date --> java.time.LocalDate - */ - public static LocalDate date2Java8Date(Date date) { - Instant instant = date.toInstant(); - ZoneId zone = ZoneId.systemDefault(); - LocalDateTime localDateTime = LocalDateTime.ofInstant(instant, zone); - return localDateTime.toLocalDate(); - } - - /** - * 03. java.util.Date --> java.time.LocalTime - */ - public static LocalTime date2Java8Time(Date date) { - Instant instant = date.toInstant(); - ZoneId zone = ZoneId.systemDefault(); - LocalDateTime localDateTime = LocalDateTime.ofInstant(instant, zone); - return localDateTime.toLocalTime(); - } - - - /** - * 04. java.time.LocalDateTime --> java.util.Date - */ - public static Date java8Date2Date(LocalDateTime localDateTime) { - Instant instant = localDateTime.atZone(ZoneId.systemDefault()).toInstant(); - return Date.from(instant); - } - - - /** - * 05. java.time.LocalDate --> java.util.Date - */ - public static Date java8Date2Date(LocalDate localDate) { - ZoneId zone = ZoneId.systemDefault(); - Instant instant = localDate.atStartOfDay().atZone(zone).toInstant(); - return Date.from(instant); - } - - /** - * 06. java.time.LocalTime --> java.util.Date - */ - public static Date java8Date2Date(LocalTime localTime) { - LocalDate localDate = LocalDate.now(); - LocalDateTime localDateTime = LocalDateTime.of(localDate, localTime); - ZoneId zone = ZoneId.systemDefault(); - Instant instant = localDateTime.atZone(zone).toInstant(); - return Date.from(instant); - } - - /** - * 07. java.sql.Date与java.util.Date的转化 - * - * @param sqlDate - * @return - */ - public static Date sqlDate2Date(java.sql.Date sqlDate) { - return new Date(sqlDate.getTime()); - } - - /** - * 08. java.util.Date与java.sql.Date的转化 - * - * @param date - * @return - */ - public static java.sql.Date date2SqlDate(Date date) { - return new java.sql.Date(new Date().getTime()); - } -} diff --git a/hutool-core/src/test/java/cn/hutool/core/date/DateUtils8TransformTest.java b/hutool-core/src/test/java/cn/hutool/core/date/DateUtils8TransformTest.java deleted file mode 100644 index 30d85fbb1..000000000 --- a/hutool-core/src/test/java/cn/hutool/core/date/DateUtils8TransformTest.java +++ /dev/null @@ -1,114 +0,0 @@ -package cn.hutool.core.date; - -import org.junit.Assert; -import org.junit.Test; - -import java.time.*; -import java.time.format.DateTimeFormatter; -import java.util.Date; - -import static cn.hutool.core.date.DatePattern.*; - -/** - * DateUtils8Transform LocalDate和Date的互换 测试用例 - * - * @author dazer - * @date 2021/3/16 22:23 - */ -public class DateUtils8TransformTest { - - /** - * 01. java.util.Date --> java.time.LocalDateTime - */ - @Test - public void date2Java8DateTimeTest() { - String str = "2021-03-16 23:59:59"; - DateTime nowDateTime = DateTime.of(str, NORM_DATETIME_PATTERN); - LocalDateTime now = DateUtils8Transform.date2Java8DateTime(nowDateTime); - Assert.assertEquals(LocalDateTimeUtil.format(now, DatePattern.NORM_DATETIME_FORMATTER), str); - } - - /** - * 02. java.util.Date --> java.time.LocalDate - */ - @Test - public void date2Java8DateTest() { - String str = "2021-03-16"; - DateTime nowDateTime = DateTime.of(str, NORM_DATE_PATTERN); - LocalDate now = DateUtils8Transform.date2Java8Date(nowDateTime); - Assert.assertEquals(LocalDateTimeUtil.format(now, DatePattern.NORM_DATE_PATTERN), str); - } - - /** - * 03. java.util.Date --> java.time.LocalTime - */ - @Test - public void date2Java8TimeTest() { - String str = "23:59:59"; - DateTime nowDateTime = DateTime.of(str, NORM_TIME_PATTERN); - LocalTime now = DateUtils8Transform.date2Java8Time(nowDateTime); - now.format(DateTimeFormatter.ofPattern(NORM_TIME_PATTERN)); - Assert.assertEquals(now.format(DateTimeFormatter.ofPattern(NORM_TIME_PATTERN)), str); - } - - - /** - * 04. java.time.LocalDateTime --> java.util.Date - */ - @Test - public void java8Date2DateTest1() { - String str = "2021-03-16 23:59:59"; - LocalDateTime now = LocalDateTimeUtil.parse(str, NORM_DATETIME_FORMATTER); - Date nowDate = DateUtils8Transform.java8Date2Date(now); - String temp1 = DateUtil.format(nowDate, NORM_DATE_FORMAT); - Assert.assertEquals(LocalDateTimeUtil.of(nowDate), now); - } - - - /** - * 05. java.time.LocalDate --> java.util.Date - */ - @Test - public void java8Date2DateTest2() { - String str = "2021-03-16"; - LocalDate now = LocalDateTimeUtil.parseDate(str); - Date nowDate = DateUtils8Transform.java8Date2Date(now); - String temp1 = DateUtil.format(nowDate, NORM_DATE_FORMAT); - Assert.assertEquals(temp1, str); - } - - /** - * 06. java.time.LocalTime --> java.util.Date - */ - @Test - public void java8Date2DateTest() { - String str = "23:59:59"; - LocalTime now = LocalDateTimeUtil.parse(str, DateTimeFormatter.ofPattern(NORM_TIME_PATTERN)).toLocalTime(); - Date nowDate = DateUtils8Transform.java8Date2Date(now); - String temp1 = DateUtil.format(nowDate, NORM_TIME_PATTERN); - Assert.assertEquals(temp1, str); - } - - /** - * java.sql.Date与java.util.Date的转化 - * - * @return - */ - @Test - public void sqlDate2DateTest() { - String str = "2021-03-16"; - LocalDate now = LocalDateTimeUtil.parseDate(str); - Date date = DateUtils8Transform.sqlDate2Date(java.sql.Date.valueOf(now)); - Assert.assertEquals(new DateTime(date).toDateStr(), str); - } - - /** - * 08. java.util.Date与java.sql.Date的转化 - */ - @Test - public void date2SqlDateTest() { - String str = "2021-03-16"; - java.sql.Date date = DateUtils8Transform.date2SqlDate(DateTime.of(str, NORM_DATE_PATTERN)); - Assert.assertEquals(new DateTime(date).toDateStr(), str); - } -}