我想为我的POJO生成一个JSON模式,并强制执行只能设置一个属性的约束。
class MyClass
{
int a;
int b;
}
并且我需要生成以下模式(或等效模式)。
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"oneOf": [
{"required": ["a"], "not": {"required": ["b"]}},
{"required": ["b"], "not": {"required": ["a"]}}
],
"properties": {
"a": {
"type": "integer"
},
"b": {
"type": "integer"
}
},
}
理想情况下,通过Jackson注解,但开放的任何其他建议。
1条答案
按热度按时间wwtsj6pe1#
这里的模式应该可以工作。你也可以通过删除
not
子句来简化它,所以只需要: