实例:一个简单的Student实体bean,一个会话bean通过EntityManager持久化实体。以下为测试代码:
Student stu=new Student();
ManyToManyDAO sd=(ManyToManyDAO)ctx.lookup("***");
System.out.println(stu.getId());
sd.saveStu(stu);
System.out.println(stu.getId());
结果:两次输出结果均为null
后来,调用stu.findStu查询Student,可以获取id
求教:为什么感觉main中stu和远端stu是两个对象,发现main中stu状态是不会变的,不会有id传入,hibernate就是这样吗?分布式应用和本地应用中jpa有不同机理吗?
如果能给以详细介绍,不胜感激。
stu = sd.saveStu(stu);