我怎样才能传递一个即时startDate,endDate作为一个@RequestParam Instant startDate, Instant endDate
模式yyyy-MM-dd
,使请求看起来像localhost:port/api/entity=startDate=2019-10-10?endDate=2019-10-15
任何想法如何执行它?
@RequestParam("from") @DateTimeFormat(iso = ISO.DATE) Instant startDate,
@RequestParam("to") @DateTimeFormat(iso = ISO.DATE) Instant endDate)
它没有帮助我得到Failed to convert value of type 'java.lang.String' to required type 'java.time.Instant'
甚至尝试与pattern
。还有一个问题是,当我在yyyy-MM-dd HH:mm:ss创建实体时,我怎么能忽略秒,这样当我传递日期和小时时,它只会显示结果。
4条答案
按热度按时间yb3bgrhw1#
将
DateTimeFormat.ISO.DATE
替换为DateTimeFormat.ISO.DATE_TIME
。Instant采用的格式:
yyyy-MM-dd'T'HH:mm:ss.SSSXXX
代码如下:
这个应该能用
9nvpjoqh2#
如果你想有一个合适的DateTime格式来为你提供处理时区的能力,我建议你使用下面的模式:
这是一个常见的ISO日期_时间格式,你可以很容易地将其转换为即时后。
例如“2000-10- 31 T01:30:00.000-05:00”
3qpi33ja3#
您的日期字符串符合日期的ISO 8601。因此,您应该使用
LocalDate
作为类型,即Here是
java.time
类型的概述。vecaoik14#
您可以使用
yyyy-MM-dd HH:mm:ss
您想要的日期格式。