Json请求验证必填字段-springboot rest-api

在下面的json请求中,您可以看到工资在3级可用 学生级别,见习级别和财产级别

employee{
id :"123";
name : "ABC";
salary : 100;
college : "abcd..";
Trainees : {
  id :"101";
  name :"XYZ";
  salary :50;
 }
properties :{ // key value pair values
  default.salary= 20
  default.college=null
 }
}  

由于薪水是我申请的必填项,因此薪水至少应为一个级别。

如果薪金字段及其值在所有级别上均不可用,则应该引发一些错误,并且其余Web服务不应处理请求;如果薪金在任一级别上均可用,则其余Web服务应接受并处理该请求。

我目前正在使用 javax.validation.constraints 进行JSON请求验证,有什么办法可以实现上述要求?

iCMS 回答:Json请求验证必填字段-springboot rest-api

如果要使用javax bean验证,则需要定义一个自定义注释(对于您的特定用例,没有默认注释),并用您的自定义验证实现ConstraintValidator。您可以在此处查看示例:https://www.baeldung.com/javax-validation-method-constraints

在这种情况下,这3个薪水字段应该为空,并且您的验证逻辑应验证其中至少一个不为空。

本文链接:https://www.f2er.com/1610252.html

大家都在问