在Java开发中,尤其是Spring和Spring Boot项目中,日期时间类型(如Date、LocalDateTime等)的格式化问题经常困扰开发者。例如,前端传递的日期字符串如何转换为后端对象?后端返回的日期对象如何按指定格式序列化?这时候,@JsonFormat和@DateTimeFormat两个注解可以轻松解决这些问题。本文将通过代码示例详细讲解它们的用法和区别。
一、@DateTimeFormat:处理请求参数的日期格式化
1. 作用
@DateTimeFormat是Spring框架提供的注解,用于将请求参数中的日期字符串转换为Java日期对象。常用于@RequestParam或实体类的字段上,处理表单提交或GET请求中的日期参数。
2. 主要属性
-
pattern:定义日期字符串的格式(如yyyy-MM-dd HH:mm:ss)。 -
iso:指定ISO标准日期格式(如ISO.DATE_TIME)。 -
locale:指定地区化配置(默认为系统默认地区)。
3. 示例代码
public class Order {
// 将前端传递的字符串(如"2023-10-01 12:30")转为LocalDateTime
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm")
private LocalDateTime createTime;
// Getter和Setter省略
}
@RestController
public class OrderController
详解@JsonFormat和@DateTimeFormat注解

最低0.47元/天 解锁文章
1万+

被折叠的 条评论
为什么被折叠?



