java - 使用hibernate向数据库添加数据的问题

标签 java hibernate

将数据添加到数据库时出现以下异常:

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/

相关文章:

java - 添加 RedirectAttributes 参数导致 Spring MVC Controller 方法中出现 "Model has no value for key"异常

Java EE 7 + 持久性 + hibernate : Unable to persist data

database - 禁用外键取消引用 Hibernate

c# - 在另一个标准之上使用一个标准

java.io.FileNotFoundException : <my path> (The system cannot find the file specified). 请指导

java - Hibernate Criteria 集合的最新日期字段

java - Gradle - 将项目依赖项共享为 jar

java - HTML Canvas、JavaScript 和 Selenium

java - 如何在spring中从rest url获取包含点(.)的参数

javax.persistence.PersistenceException : org. hibernate.PersistentObjectException: 错误