Spring REST:如何验证请求体中传递的日期

时间:2016-06-29 15:02:50

标签: java spring rest validation hibernate-validator

我正在开发一个Spring REST应用程序。
我有一个像这样的REST控制器

@RequestMapping(value = "/patient", method = RequestMethod.POST)
        public BloodPressureDTO store(@RequestBody BloodPressureDTO bloodPressureDto) {

      .........
}

BloodPressureDTO对象里面有一个Date对象。
我需要验证Date对象。

如果请求中发布的JSON具有无效的日期格式,那么我想处理这种情况。

1 个答案:

答案 0 :(得分:0)

好消息是你已经在使用Spring框架,它可以灵活配置 JSR-303,JSR-349 bean验证或通过实现spring Validator接口来满足你的要求。

您可以将@Valid @RequestBody添加到控制器。 @Valid注释是java bean验证API的一部分,不是特定于spring的构造。通过将其添加到@Controller中的方法中的输入参数,我们将触发验证。

您可以执行@NotNull等,但是对于范围,格式,您需要扩展Validator&创建类似@InDateRange

的内容

您可以查看日期验证特定代码here