LocalDateTime 在springboot中接收值的处理
之前的Date类型好像在Java 中不推荐使用了J8之后出现了LocalDateTime
解决MVC接收参数有两种方法:
1、直接在Bean的字段上添加注解
@TableField(exist = false)
@DateTimeFormat(iso =DateTimeFormat.ISO.DATE)//Date是只要日期
private LocalDate createTimeQuery;
ISO内容如下:
enum ISO {
/**
* The most common ISO Date Format {@code yyyy-MM-dd},
* e.g. "2000-10-31".
*/
DATE,
/**
* The most common ISO Time Format {@code HH:mm:ss.SSSXXX},
* e.g. "01:30:00.000-05:00".
*/
TIME,
/**
* The most common ISO DateTime Format {@code yyyy-MM-dd'T'HH:mm:ss.SSSXXX},
* e.g. "2000-10-31T01:30:00.000-05:00".
* <p>This is the default if no annotation value is specified.
*/
DATE_TIME,
/**
* Indicates that no ISO-based format pattern should be applied.
*/
NONE
}
2、在参数接收处填写
@RequestParam @NotNull @DateTimeFormat(iso = DateTimeFormat.ISO.DATE) LocalDate localDate
ISO如上
Java中String、LocalDateTime、LocalDate、Date互转
String 转LocalDate和LocalDateTime
LocalDate startDate = LocalDate.parse("2019-12-05", DateTimeFormatter.ofPattern("yyyy-MM-dd"));
LocalDateTime startDateTime =
LocalDateTime.parse("2019-12-05 15:30:11", DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
LocalDate转Date
LocalDate localDate = LocalDate.now();
ZoneId zone = ZoneId.systemDefault();
Instant instant = localDate.atStartOfDay().atZone(zone).toInstant();
java.util.Date date = Date.from(instant);
LocalDateTime转Date
Date LocalDateTimeToDate = Date.from(LocalDateTime.now().atZone(ZoneId.systemDefault()).toInstant());
LocalDateTime转String
String currentTime = LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
标题:LocalDateTime 在springboot中接收值的处理
作者:llilei
地址:http://solo.llilei.work/articles/2022/03/09/1646788352091.html