REST URL中查询参数的日期时间格式

时间:2019-09-15 06:28:02

标签: java spring rest spring-mvc postman

我正在使用joda DateTime作为参数。

在Spring REST中使用自定义日期时间格式作为请求查询参数

我尝试使用@DateTimeFormat批注。

我尝试使用自定义转换器。

   @GetMapping("/users/time")
   public ResponseEntity<User> findByTimeRange(final DateTime from, final DateTime to) {
   }

Spring REST仅支持"2019-09-01T7:32:56.235-05:30",但我想使用"2019-09-01T7:32:56"

1 个答案:

答案 0 :(得分:0)

基本上,您将需要一个自定义格式化程序,并将参数作为字符串传递并使用它解析它们。这是使用Joda Time的工作代码,并通过您的输入进行了测试:

private static final DateTimeFormatter FORMATTER = 
                     DateTimeFormat.forPattern("yyyy-MM-dd'T'HH:mm:ss");

@GetMapping("/users/time")
public ResponseEntity<User> findByTimeRange(@RequestParam("from") String fromParam,
                                            @RequestParam("to") String toParam) {
    DateTime from = FORMATTER.parseDateTime(fromParam);
    DateTime to = FORMATTER.parseDateTime(toParam);

    // Do your search part...
}