刚new出来的family,System.out.println("family="+family.getId());肯定是空指针啊。你都没赋值。 ------解决方案-------------------- org.springframework.orm.hibernate3.HibernateSystemException: a different object with the same identifier value was already associated with the session: [com.zhijia.gfamily.po.player.User#13];
=====================================
作为ID 13的User对象已经存在了,这个你需要看下关于Hibernate的Entity管理状态
由于你的User是new出来的,保存后能打印ID,不知道你的Dao里是怎么写的...是数据库自增的吗,还是如何赋值的。
这种错误一般由于两个主键相同的对象,在不同事务中,且不同的管理状态下,hibernate无法区分你要保存的对象才会出现的,因为保存时,hibernate还会去检查内存的 ------解决方案-------------------- 我知道啊,我说你在服务器端写个main函数调用试试,可以插入吗? ------解决方案-------------------- 为此推荐你看下这个文章
http://developer.51cto.com/art/200907/133235.htm ------解决方案-------------------- 有没有试过在save之后加flush()强制刷一下 ------解决方案-------------------- 那就debug插入那里的句子,然后从服务器点击看看呗,,, ------解决方案--------------------
再补充一段:
Caused by: org.hibernate.NonUniqueObjectException: a different object with the same identifier value was already associated with the session: [com.zhijia.gfamily.po.player.User#13]