将数据添加到数据库时出现以下异常:
org.hibernate.HibernateException:数据库未返回 native 生成的标识值
我正在使用以下代码:
Session session = HibernateUtil.getSession();
Transaction tx = session.beginTransaction();
session.save(user);
logger.info("Successfully data insert in database");
tx.commit();
isSaved = true;
请告诉我出了什么问题。谢谢
最佳答案
数据库似乎不支持身份 ID 生成器。根据您的映射,您可能使用 userName 作为 ID 列,这意味着您可能希望将生成器类设置为分配,因为将手动选择用户名(= id)(而不是由数据库自动生成):
<hibernate-mapping>
<class name="com.test.User" table="user">
<id name="userName" column="user_name">
<generator class="assigned" />
</id>
<property name="userCode">
<column name="user_code" />
</property>
</class>
</hibernate-mapping>
关于java - 使用hibernate向数据库添加数据的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2620326/