Spring boot Spring RESTful应用程序-POST方法请求主体强制属性

Spring boot Spring RESTful应用程序-POST方法请求主体强制属性,spring-boot,spring-data-jpa,swagger-editor,Spring Boot,Spring Data Jpa,Swagger Editor,我正在SpringBoot中构建一个RESTful应用程序,我想在我的POST方法的请求主体中强制设置几个属性 在swagger-yaml中,我将它们标记为必需的“true”,但当我使用swagger-editor生成类时,我看不到有任何影响,也就是说,我甚至看不到@NotNull注释或任何类似的东西 如何在java模型类中将它们标记为必填项?@NotNull是正确的选择吗 如果是,我应该在我的请求主体类中,还是在jpa文档类中,或者同时在两者中执行 谢谢 是的,@NotNull是一条路要走 但

我正在SpringBoot中构建一个RESTful应用程序,我想在我的POST方法的请求主体中强制设置几个属性

在swagger-yaml中,我将它们标记为必需的“true”,但当我使用swagger-editor生成类时,我看不到有任何影响,也就是说,我甚至看不到@NotNull注释或任何类似的东西

如何在java模型类中将它们标记为必填项?@NotNull是正确的选择吗

如果是,我应该在我的请求主体类中,还是在jpa文档类中,或者同时在两者中执行


谢谢

是的,
@NotNull
是一条路要走

但您还需要使用
@Valid
注释

检查示例:

@RequestMapping(value = "/appointments", method = RequestMethod.POST)
    public String add(@Valid AppointmentForm form, BindingResult result) {
        ....
    }

    static class AppointmentForm {

        @NotNull
        private Date date;
    }

当然,我将使用@Valid注释,但我假设如果验证失败,将引发异常?如果是,它是什么类型的异常?此异常类型可以是
MethodArgumentNotValidException
。在Spring中,有@ExceptionHandler将异常映射到响应HTTP代码。这很有帮助!非常感谢。