如果我们要构建一个自定义的 JSR 303 验证器,有什么办法可以将字段的值而不是字段的名称传递给验证器?
这就是我在做什么..
我需要构建一个自定义类级别验证来验证这种情况..
有两个字段 A 和 B,其中 B 是日期字段。如果 A 的值为 1,则验证 B 不为空且其值为未来日期。
现在,我能够在这篇文章之后根据这些要求构建验证。在 FutureDateValidator 的 isValid() 方法中,我检查了 A 的值是否为 1,然后检查了日期有效性。
@CustomFutureDate(first = "dateOption", second = "date", message = "这必须是未来的日期。")
现在我有了一组新的字段 C 和 D,其中 D 又是日期字段。这一次,如果 C 的值为 2,我需要验证 D 是否为未来日期。在这种情况下,我不能使用我已经实现的验证器,因为它具有硬编码的第一个字段的值。那么我该如何解决这个问题,以便为这两种情况重用相同的验证器。