2012-07-24 69 views
1

正如问题所提及的,我非常好奇,为什么当反序列化发生时,它不需要二维映射?只需要吸气剂?为什么JSON不需要setXXX方法?

我正在使用杰克逊的JSON。

+3

您是否阅读过他们的文档?也许他们通过使用反射直接设置值。 – Thomas 2012-07-24 09:02:37

+1

事实上,反射是在引擎盖下使用,无论是使用setter方法(如果可用)或现场(如果没有) – StaxMan 2012-07-24 16:57:54

回答

4

Jackson和类似的Java到/从JSON工具甚至不需要getter来设置/修改字段值。要设置/修改的字段甚至可以是私人的和最终的(具有已经指定的值--Jackson不一定会尊重字段的不变性)。这怎么可能?正如托马斯所建议的那样,杰克逊可以使用反射来设置字段值此行为在http://www.cowtowncoder.com/blog/archives/2010/08/entry_409.html中描述。

相关问题