gpt4 book ai didi

java - 在 hibernate 中使用已弃用的保存方法的替代方法

转载 作者:行者123 更新时间:2023-12-05 03:28:39 25 4
gpt4 key购买 nike

我正在使用以下代码将一个人对象保存到数据库中:

import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;

public class Main {

public static void main(String[] args) {
Person person = new Person();
person.setID(1);
person.setName("name-1");
person.setAddress("address-1");

Configuration configuration = new Configuration().configure().addAnnotatedClass(Person.class);
SessionFactory sessionFactory = configuration.buildSessionFactory();
Session session = sessionFactory.openSession();
Transaction transaction = session.beginTransaction();
session.save(person);
transaction.commit();
}
}

我看到 save 方法已被弃用。我们应该使用什么替代方法?

最佳答案

save()从 Hibernate 6.0 开始不推荐使用。 javadoc建议使用 persist()相反。

Deprecated.

use persist(Object)

小字:save()persist() 相似,但仍然不同。 save() 立即保留实体并返回生成的 ID。 persist() 只是标记要插入的实体。 ID 取决于标识符生成器,​​可以异步生成,例如在刷新 session 时生成。

关于java - 在 hibernate 中使用已弃用的保存方法的替代方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71211904/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com