Hibernate应用中Java对象的状态
当应用程序通过new语句创建了一个对象,这个对象的生命周期就开始了,当不再有任何引用指向它的时候,这个对象就结束生命周期,它占用的内存就可以被JVM的垃圾回收器回收
对于需要被持久化的Java对象,在它的生命周期中。可处于以下三个状态之一
程序代码
Person对象的生命周期
Person对象的状态
tx=session.beginTransaction();
Person person=new Person(“张三”);
开始生命周期
临时状态
session.save(person);
处于生命周期中
转变为持久化状态
Long id=person.getId();
person=null;
Person person2=(Person)session.load(Person.class,id);
tx.commit();
处于持久化状态
session.close()
转变为游离状态
System.out.println(person2.getName());
处于游离状态
person2=null;
结束生命周期
临时状态的特征:
在以下情况下,Java对象进入临时状态
持久化对象的特征:
Session的许多方法都能够触发Java对象进入持久化状态
游离对象的特征: