首页 > 系统服务 > 详细

hibernate对象状态 的小问题

时间:2014-09-04 20:41:40      阅读:226      评论:0      收藏:0      [点我收藏+]
Class classA{
    List a;
   
    public void setA(List a)
     {
      this.a =a;
     }
      public List getA()
     {
      return this.a;
     }
    

}
....
classA t;//处于hibernate管理状态下面

List b=new ArraryList<>();
b.add(new Object());

/**
成功
*/
t.getA().add(b);//maybe addAll(b)
//如果使用t.a=b;则会失败
session.update(t)



分析原因:

t.a=b 改变了t的引用地址,重新指向的这个地址,对象不在hibernate的管理状态中。

t.getA().add(b);没改变引用,只是修改了引用内部的值

 

hibernate对象状态 的小问题

原文:http://www.cnblogs.com/shenghaishiweini/p/3956691.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!