例1-
Session session = HibernateSessionFactory.getSession();
Transaction tx = session.beginTransaction();
tx.begin();
StuClass sClass = new StuClass(); //new 一个StuClass对象
sClass.setCname("bbbbbb");
session.save(sClass);
tx.commit();
commit()之后这个sClass对象是什么状态?
session.close();
close()之后这个sClass对象是什么状态?
如果是游离态的 那为什么我
System.out.println(sClass.getCname());
System.out.println(sClass.getId());之后还能取到 属性值? 还是说游离态本来就有属性值?~ 是不是游离态只有一个oid和数据库的一条记录对应!!?
例2
Session session = HibernateSessionFactory.getSession();
Transaction tx = session.beginTransaction();
tx.begin();
StuClass sc = (StuClass) session.load(StuClass.class, new Integer(1)); //从数据库加载Id是1的 StuClass对象!
session.save(sClass);
tx.commit();
//这里我能取到这个sc对象的 的name 和 id 这个时候它是什么状态?
System.out.println(sc.getCname());
System.out.println(sc.getId());
session.close();
//关闭session之后!!!
System.out.println(sc.getCname());
System.out.println(sc.getId());
如果我单纯的取ID 就能正常取到
但是如果我取name就会报异常!!
这个时候sc是什么状态?
谢谢了 !!!! 辛手!