在我的REST API中,我有一个变量,该变量只能具有三个值“ E”,“ U”或null。
如果有其他值传入,我想通过验证异常或类似方法。
我可以使用json注释或其他方式来做任何事情吗?
下面是一个示例:
{
"name": "dave",
"Status": "E" , --this can have values only "E" or "U"
}
答案 0 :(得分:1)
解决方案1:检查javax.validation to validate list of values?
解决方案2:编写自定义验证服务,将您允许的值放在enum类中,并检查请求中的值是否正确
这可以通过在控制器中调用服务或通过创建自定义Bean验证批注来完成-一些详细信息可以在这里找到:https://docs.jboss.org/hibernate/validator/5.1/reference/en-US/html/validator-customconstraints.html#validator-customconstraints-errormessage
//编辑解决方案2,也包含在解决方案1中