概述
import java.time.Instant;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.LocalTime;
import java.time.ZoneId;
import java.time.format.DateTimeFormatter;
import java.util.Date;
/**
* 操作时间工具类
*/
public class DateTimeUtil {
public static final DateTimeFormatter FORMATTER = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss").withZone(ZoneId.of("+8"));
/**
* 将字符串 转成 LocalDateTime
*
* @param dateTime 时间 "2016-04-04 11:50:53"
* @return LocalDateTime
*/
public static LocalDateTime strTime2LocalDateTime(String dateTime) {
return LocalDateTime.parse(dateTime, FORMATTER);
}
/**
* 将LocalDate转换成java.sql.Date
*
* @param date
* @return
*/
public static java.sql.Date localDate2SqlDate(LocalDate date) {
//LocalDate ---> java.util.Date
Date tmp = localDate2Date(date);
// java.util.Date --->java.sql.Date
java.sql.Date sqlDate = new java.sql.Date(tmp.getTime());
return sqlDate;
}
/**
* date 转成 LocalDateTime
*
* @param date 日期
*/
public static LocalDateTime date2LocalDateTime(Date date) {
Instant instant = date.toInstant();
ZoneId zone = ZoneId.systemDefault();
return LocalDateTime.ofInstant(instant, zone);
}
/**
* date 转成 LocalDate
*
* @param date 日期
*/
public static LocalDate date2LocalDate(Date date) {
Instant instant = date.toInstant();
ZoneId zone = ZoneId.systemDefault();
LocalDateTime localDateTime = LocalDateTime.ofInstant(instant, zone);
return localDateTime.toLocalDate();
}
/**
* date 转成 LocalTime
*
* @param date 日期
*/
public static LocalTime date2LocalTime(Date date) {
Instant instant = date.toInstant();
ZoneId zone = ZoneId.systemDefault();
LocalDateTime localDateTime = LocalDateTime.ofInstant(instant, zone);
return localDateTime.toLocalTime();
}
/**
* LocalDateTime 转成 Date
*
* @param localDateTime 时间
* @return 结果集
*/
public static Date localDateTime2Date(LocalDateTime localDateTime) {
ZoneId zone = ZoneId.systemDefault();
Instant instant = localDateTime.atZone(zone).toInstant();
return Date.from(instant);
}
/**
* localDate 转成 Date
*
* @param localDate 结果集
*/
public static Date localDate2Date(LocalDate localDate) {
ZoneId zone = ZoneId.systemDefault();
Instant instant = localDate.atStartOfDay().atZone(zone).toInstant();
return Date.from(instant);
}
/**
* LocalTime 转成 Date
*
* @param localDate 时间
* @param localTime 本地时间
*/
public static Date localTime2Date(LocalDate localDate, LocalTime localTime) {
LocalDateTime localDateTime = LocalDateTime.of(localDate, localTime);
ZoneId zone = ZoneId.systemDefault();
Instant instant = localDateTime.atZone(zone).toInstant();
return Date.from(instant);
}
}
最后
以上就是可耐白云为你收集整理的【精品】基于Java8的日期时间工具类的全部内容,希望文章能够帮你解决【精品】基于Java8的日期时间工具类所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复