Jakarta Validation 注解的使用

问题描述 投票:0回答:1

如果我想发布一个简单的utils API。是否建议使用 Jakarta Validation 注释(基本上在每个公共方法的每个输入参数上)来表示哪些需要是 @NonNull 或 @Positive ?

这似乎是向用户表明这些限制的好方法,但在任何地方都使用它可能太多了?什么时候需要,什么时候不推荐?

这里谈论常规的 SE Java,没有应用程序,没有 REST API,没有 Spring 或其他什么。

java validation
1个回答
0
投票

我关于这个主题的几个问题没有真正的答案,但有一些评论,我将总结我目前的理解。如果您有更直接的了解,请随时获得更完整的答案。

  1. API 主要用于通过 Web API(以及反序列化)验证来自用户的 Bean。

  2. 可以使用实现(hibernate-validator)来显式验证,但它更适合在自动处理它的框架内使用。

  3. 在我看来,在常规 API(无网络、无框架)中,他们会对简单的声明性文档效果感兴趣,但找不到有关此用途的信息。如果仅以声明方式使用,我认为不需要验证器实现。

  4. 尽管如此,由于注释本身没有自动处理,也没有 IDE 简单验证,所以您仍然需要自己实现。一旦你的方法处理了一个空参数,通过做一些特定的事情(默认返回值或抛出异常),你就可以记录这个行为,@NotNull 更像是一个建议而不是一个约束。

© www.soinside.com 2019 - 2024. All rights reserved.