Jackson:从Json更新(而不是创建新对象)JavaObject?

Jackson:从Json更新(而不是创建新对象)JavaObject?,java,jackson,Java,Jackson,好的,我有话要说 userjson = { fname : "ABC", lname : "DEF" } 和一个用户Pojo对象 User { String id, String email, String fname, String lname } 现在使用我的Jackson,我知道如何从userjson创建用户实例,但是如何从userjson更新现有的用户实例,因为我的用户实例已经由其他模块设置了一些属性 现在我要做的是将userjson转换为userHasMap,然后手动设置

好的,我有话要说

userjson = { fname : "ABC", lname : "DEF" }
和一个用户Pojo对象

User {
 String id, 
 String email,
 String fname,
 String lname
}
现在使用我的Jackson,我知道如何从userjson创建用户实例,但是如何从userjson更新现有的用户实例,因为我的用户实例已经由其他模块设置了一些属性

现在我要做的是将userjson转换为userHasMap,然后手动设置所有值

userInstance.setFName(userHasMap.get('fname'))
userInstance.setLName(userHasMap.get('lname'))
whoch工作正常,但我想我已经做了一些事情,在需要时将userInstance转换为userjson,这会使jackson lib的使用变得毫无意义。

Ok找到了答案,


因为它使用的是来自JavaScript的json,所以我删除了它。为什么会有人关闭它,而不给出任何理由?语义上的区别是什么?这些“由其他模块设置的属性”不也必须更新吗?是的,但不是在同一个线程中或一次性更新,如果我想使用jackson设置,我需要做的是从现有的临时变量创建临时变量,然后创建新的,然后将所有这些临时变量设置回新的,这不是很多工作,更重要的是,这是首选吗?这取决于您的数据结构。如果“其他模块设置的属性”是从对象的属性派生的,则应将它们封装在该对象中。给定的链接不可访问。任何人谁有新的或更新的链接,请更新在回答。
mapper.readerForUpdating(object).readValue(json);