【问题标题】:How can I make fields in Object as required or do field validation?如何根据需要在 Object 中创建字段或进行字段验证?
【发布时间】:2021-09-07 04:59:08
【问题描述】:

假设我有一个使用 jsonschemapojo2 创建的类

public class a{
   private String  b;
   public void setB(String b){this.b = b}
   public void getB(){return b}
}

我使用这个类将来自 mongodb 的结果解析为一个对象:

a = {b : "1"}

我对我的应用程序的新要求是,当字段 b 为空、空字符串或对象中不存在时,必须抛出异常。我不能在类级别使用注释,因为类是从 jsonschemapojo2 创建的。有没有办法在架构级别指定所需的字段注释?否则我将如何创建一个验证对象的代理方法?我应该使用反射还是在springboot中有更聪明的方法?

【问题讨论】:

    标签: java spring-boot jsonschema


    【解决方案1】:

    是的,bean 验证允许在 xml 文件中定义约束。您可以在 Hibernate 网站上找到许多示例。

    【讨论】:

      【解决方案2】:

      您可以使用以下任一选项来定义约束 -

      i) 通过编程 API More Details

      ii) 通过 XML:More details

      您无法启用或禁用约束,因此您必须在每次运行时重新定义元数据,这不是一个好主意。

      【讨论】:

      • 如何在 jsonchemapojo2 级别设置非空约束
      • 有一个标签:<constraint annotation="jakarta.validation.constraints.NotEmpty"/>
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-01-05
      • 2017-11-19
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多