【问题标题】:Hibernate return auto-generate id of a newly inserted rowHibernate 返回自动生成新插入行的 id
【发布时间】:2011-11-18 13:21:03
【问题描述】:

我正在使用 HibernateTemplate 在我的 Spring 应用程序中访问数据库。 HibernateTemplate 中是否有任何方法/方法可以返回自动生成的 id 对于我新插入的行?在我的例子中,自动生成的值是我的表的主键,它被定义为数据库内部的自动增量。

更多信息,我使用 saveOrUpdate() 方法插入数据。

【问题讨论】:

    标签: sql-server hibernate spring


    【解决方案1】:

    当您使用 saveOrUpdate() 保存对象时,如果是创建操作,对象 id 字段将使用自动生成的 id 进行更新。因此,您可以简单地检索已保存对象的id 属性以获取自动生成的 id。

    【讨论】:

    • 您能否扩展您的答案以说明它是如何在 MySQL 中执行的?我在探查器中看不到任何选择 LAST_INSERT_ID()(当我连接到 SQL Server 时,我看到了 scope_identity())。
    • 对象对象=新对象; // object.getId() == null saveOrUpdate(object); object.getId() == 插入的 id
    猜你喜欢
    • 2017-10-10
    • 1970-01-01
    • 2016-10-22
    • 1970-01-01
    • 2013-12-25
    • 2017-11-05
    • 2019-02-22
    • 2017-11-23
    • 1970-01-01
    相关资源
    最近更新 更多