我使用的是Gson 1.6和Spring Framework 3.0,用于在WebSphere 6.1上的Java web应用程序。我有一些Spring bean,其实际实例是CGLIB代理。当我尝试通过Gson序列化这些bean时,该类的非基元属性不会被序列化。相反,我得到的东西,如:Gson序列化Spring beans
{
"CGLIB$BOUND":true,
"CGLIB$CONSTRUCTED":true,
"booleanProperty":true,
"anotherBooleanProperty":true,
}
,我期待更多的东西一样
{
"stringProperty":"stringValue"
"integerObjectProperty":17,
"booleanProperty":true,
"anotherBooleanProperty":true,
}
当我序列非代理POJO,输出正是我所期待。我如何让Gson生成我期望的输出?
我同意你100%认为这不是最佳做法。我们序列化的99%实际上是VOs/DTOs ......不幸的是,作为一个更大团队的一部分,并非每个人都遵循相同的标准,而我无法控制,这样的事情确实发生了。我希望至少减轻这种伤害。 – Ray 2011-05-12 17:10:41