杰克逊贴图对象按地图

蝶形

我有以下测试代码:

Model model = new Model();
model.setName("Alex");
model.setAddress("NY");

Map<Object, Object> attrs = new HashMap<>();
attrs.put("address", "London");

我只需要model使用中的值来修补现有对象attrs Map

因此,执行代码后,我需要具有model以下值的现有对象:

name: Alex
address: London

是否可以用Jackson实现如果是这样,请举例说明。

卡西莫林

杰克逊绝对可以实现。就像yshavit提到的,以下将解决问题:

ObjectMapper mapper = new ObjectMapper(); 

// Convert POJO to Map
Map<String, Object> modelAsMap = 
    mapper.convertValue(model, new TypeReference<Map<String, Object>>() {}); 

// Merge maps
modelAsMap.putAll(attrs);

// Convert Map to POJO
Model modelPatched = mapper.convertValue(modelAsMap, Model.class);

有关将POJO映射到aMap和反之亦然的更多详细信息,请参阅此答案

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章