【发布时间】:2021-03-20 12:12:49
【问题描述】:
如何将此带有动态属性的 JSON 字符串映射到 Java 对象?
{
'name' : 'John',
'lastname': 'Doe',
'dynamicProperty1': { 'label' : 'size', 'value': 'large'},
'dynamicProperty2': { 'label' : 'color', 'value': 'blue'},
'dynamicProperty3': { 'label' : 'height', 'value': 200},
'dynamicProperty...': { 'label' : 'points', 'value': 300}
}
【问题讨论】:
-
作为澄清,您似乎暗示属性将遵循特定的命名约定,但假设您可能有任意数量的未知字段名称是否安全?
...'cat': {...}, 'dog':{...}... -
无论哪种方式,如果您可以控制此数据模型,为了简单起见,我建议您将所有动态属性移动到一个列表中,而不是像
dynamicProperties: [{...},{...},{...}] -
@hdost,我无法控制动态属性。这些动态属性可以从 0 到 100。
标签: java json jackson jsonnode