LocalDateTime和LocalDate用法
LocalDateTime相关方法
LocalDateTime的获取
public static LocalDateTime now() // 获取当前系统时间
public static LocalDateTime of (年, 月 , 日, 时, 分, 秒) // 使用指定年月日和时分秒初始化一个LocalDateTime对象
public int getYear() 获取年
public int getMonthValue() 获取月份(1-12)
public int getDayOfMonth() 获取月份中的第几天(1-31)
public int getDayOfYear() 获取一年中的第几天(1-366)
public DayOfWeek getDayOfWeek() 获取星期
public int getMinute() 获取分钟
public int getHour() 获取小时
LocalDateTime的运算
public LocalDateTime isBefore() 时间是否在之前
public LocalDateTime isAfter() 时间是否在之后
public LocalDateTime plusYears (long years) 添加或者减去年
public LocalDateTime plusMonths(long months) 添加或者减去月
public LocalDateTime plusDays(long days) 添加或者减去日
public LocalDateTime plusHours(long hours) 添加或者减去时
public LocalDateTime plusMinutes(long minutes) 添加或者减去分
public LocalDateTime plusSeconds(long seconds) 添加或者减去秒
public LocalDateTime plusWeeks(long weeks) 添加或者减去周
分隔
public LocalDateTime withYear(int year) 直接修改年
public LocalDateTime withMonth(int month) 直接修改月
public LocalDateTime withDayOfMonth(int dayofmonth) 直接修改日期(一个月中的第几天)
public LocalDateTime withDayOfYear(int dayOfYear) 直接修改日期(一年中的第几天)
public LocalDateTime withHour(int hour) 直接修改小时
public LocalDateTime withMinute(int minute) 直接修改分钟
public LocalDateTime withSecond(int second) 直接修改秒
public Period between() 获取时间间隔
LocalDateTime格式化
public String format (日期格式化器对象) // 把一个LocalDateTime格式化成为一个字符串
public static LocalDateTime parse (准备解析的字符串, 日期格式化器对象) //把一个日期字符串解析成为一个LocalDateTime对象
public static DateTimeFormatter ofPattern(String pattern) //使用指定的日期模板获取一个日期格式化器DateTimeFormatter对象
示例用法
public class LocalDateTimeTest{
public static void main(String[] args) {
//将当前时间按照格式进行输出 LocalDateTime --> String
LocalDateTimeToString();
//将字符串表示的时间转换为LocalDateTime对象 String --> LocalDateTime
StringToLocalDateTime();
}
private static void StringToLocalDateTime() {
String time = "2023-08-11 05:25:24"; //目标时间
//生成日期时间格式化器对象
DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
//直接调用LocalDateTime的静态方法parse对字符串进行解析,得到LocalDateTime对象
LocalDateTime dateTime = LocalDateTime.parse(time, dateTimeFormatter);
System.out.println(dateTime);
}
private static void LocalDateTimeToString() {
//生成LocalDateTime对象
LocalDateTime now = LocalDateTime.now();
//生成日期时间格式化器对象
DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm-ss");
//LocalDateTime对象调用format方法将自身进行格式化,得到格式化后的字符串
String format = now.format(dateTimeFormatter);
System.out.println(format);
}
}
实体类用法
入参用法
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
@JsonDeserialize(using = LocalDateTimeDeserializer.class)
@JsonSerialize(using = LocalDateTimeSerializer.class)
@JsonFormat( pattern="yyyy-MM-dd HH:mm:ss")
private LocalDateTime updateTime;
出参用法
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateTimeSerializer;
@JsonFormat(shape=JsonFormat.Shape.STRING, pattern= DateFormatterConst.YYYY_MM_DD_HHMMSS)
@JsonSerialize(using = LocalDateTimeSerializer.class)
private LocalDateTime updateTime;
LocalDate和LocalTime
LocalDate和LocalTime与上面用法基本一致,大家自行采纳