首页 > 解决方案 > 弹簧控制器:接受许多不同格式的日期/时间

问题描述

在我的控制器中,我需要支持许多不同的日期格式,例如:

2018-08-24 13:00
2018-08-24
2009-12-31 23:59:59.999 +0100
2019-04-08T16:01:09

我可以创建控制器使用的 pojo 并以某种方式告诉 spring 支持多种格式吗?

data class UserRequest(
        @field:DateTimeFormat(iso = DateTimeFormat.ISO.DATE_TIME) // more formats?
        val start: LocalDateTime,
        // ... other fields
)

@RestController
class MyController {

    @GetMapping("/api/v1/xxx")
    fun get(request: UserRequest) = ...
}

标签: javaspringspring-bootspring-mvcdate-formatting

解决方案


您可以使用ConversionService它,这是一个示例:https ://www.baeldung.com/spring-date-parameters


推荐阅读