hibernate代理对象在用gson序列化时出错

阅读更多

 目的:把对象A序列化成json字符串传递到前台读取

遇到的问题:对象A中的属性B是一个引用对象,得到的json串中该引用的值如下

{
 "CGLIB$BOUND":true,
 "CGLIB$CONSTRUCTED":true,
 "booleanProperty":true,
 "anotherBooleanProperty":true,
}……

 看起来像CGLIB代理对象,总之就是提取不到B的属性值。

 

首先看下A、B的关系:

class A{

  private B  b ; 

}

class B{

  ......

}

A和B是多对一的关系,看到A配置文件:

 
        

 

加上lazy="false"属性即可!!

 

现在能正确序列化了。但是要注意的是这样修改之后,hibernate不会加载A对象的B属性了,需要手动查询关联对象。

你可能感兴趣的:(hibernate代理对象在用gson序列化时出错)