gpt4 book ai didi

java - 从 hibernate 迁移到另一个 ORM 工具

转载 作者:行者123 更新时间:2023-12-01 22:24:47 25 4
gpt4 key购买 nike

假设我为我的类使用了 javax.persistance 注释,并且如果我使用 hibernate 来持久化这些类的对象,我需要做哪些更改才能迁移到另一个 ORM 工具?例如,应如何更改以下代码以适应新的 ORM 工具?我知道我需要更改导入语句,但是其余代码呢?

import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.boot.registry.StandardServiceRegistry;
import org.hibernate.boot.registry.StandardServiceRegistryBuilder;
import org.hibernate.cfg.Configuration;

public class Driver {

private static StandardServiceRegistry serviceRegistry;
private static SessionFactory sessionFactory;

public static void main(String[] args) {

MyClass obj = new MyClass();
obj.setUserID(3);
obj.setName("shsdassaadfna");

Configuration configuration = new Configuration().configure();
serviceRegistry = new StandardServiceRegistryBuilder().applySettings(configuration.getProperties()).build();
sessionFactory = configuration.configure().buildSessionFactory(serviceRegistry);

Session session = sessionFactory.openSession();
session.beginTransaction();
session.save(obj);
session.getTransaction().commit();
session.close();
}

}

最佳答案

尽管您确实使用了 javax.persistence 注释,但其余代码是 Hibernate 特定的,因此 ORM 更改将需要对代码进行重大重写。

为了使您的代码与 JPA 供应商无关,您应该仅使用 JPA 接口(interface),entity manager而不是 Hibernate session 等。即使如此,只有对代码进行完整的测试覆盖才能为您提供高度的保证,确保一切都将按预期继续工作。

关于java - 从 hibernate 迁移到另一个 ORM 工具,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29012265/

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