mirror of
https://gitee.com/chinabugotech/hutool.git
synced 2025-04-19 03:01:48 +08:00
删除pr被退回的日期工具类
This commit is contained in:
parent
e9cdc55cb9
commit
cbb85fd0b3
@ -1,100 +0,0 @@
|
||||
package cn.hutool.core.date;
|
||||
|
||||
import java.time.*;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* LocalDate和Date的互换
|
||||
* <p>
|
||||
* 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());
|
||||
}
|
||||
}
|
@ -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);
|
||||
}
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user