org.hibernate.id.IdentifierGenerationException: ids for this class must be manually assigned before calling save(): com.item.entity.TblFwxx
at org.hibernate.id.Assigned.generate(Assigned.java:56)
at org.hibernate.event.def.AbstractSaveEventListener.saveWithGeneratedId(AbstractSaveEventListener.java:122)
at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.saveWithGeneratedOrRequestedId(DefaultSaveOrUpdateEventListener.java:210)
at org.hibernate.event.def.DefaultSaveEventListener.saveWithGeneratedOrRequestedId(DefaultSaveEventListener.java:56)
at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.entityIsTransient(DefaultSaveOrUpdateEventListener.java:195)
at org.hibernate.event.def.DefaultSaveEventListener.performSaveOrUpdate(DefaultSaveEventListener.java:50)
at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.onSaveOrUpdate(DefaultSaveOrUpdateEventListener.java:93)
at org.hibernate.impl.SessionImpl.fireSave(SessionImpl.java:563)
at org.hibernate.impl.SessionImpl.save(SessionImpl.java:551)
at org.hibernate.impl.SessionImpl.save(SessionImpl.java:547)
本人刚学Hibernate,这会是哪里出问题了?希望高手能帮我分析下
------最佳解决方案--------------------
把你要保存的实体的主键,手动赋一个值,1234567都可以。
------其他解决方案--------------------
没有主键吗?
------其他解决方案--------------------
问题已解决 <id name="fwid" type="java.lang.Integer">
<column name="fwid" />
<generator class="native" />原因是这个native被我写错了
</id>