gpt4 book ai didi

hibernate - 如何更改已弃用的 HibernateEntityManagerFactory(5.2.10) 以添加监听器?

转载 作者:行者123 更新时间:2023-12-05 07:41:26 25 4
gpt4 key购买 nike

我尝试将监听器添加到 hibernate (5.2.10) 实体以在更改后获取新旧值。我使用 SpringBoot 和 org.hibernate.HibernateEntityManagerFactory,但此类标记为“已弃用”。我如何更改我的代码以删除已弃用的类?

现在我做这样的事情:

@Component
public class HibernateListenersConfigurer {

@Autowired
private EntityManagerFactory entityManagerFactory;

@Autowired
private HibernateEntityListener listener;

@PostConstruct
public void registerListeners() {

// here I see Deprecated warning !!!
final HibernateEntityManagerFactory hibernateEntityManagerFactory = (HibernateEntityManagerFactory) this.entityManagerFactory;
final SessionFactoryImpl sessionFactoryImpl = (SessionFactoryImpl) hibernateEntityManagerFactory.getSessionFactory();
final EventListenerRegistry registry = sessionFactoryImpl.getServiceRegistry().getService(EventListenerRegistry.class);
registry.getEventListenerGroup(EventType.POST_COMMIT_UPDATE).appendListener(listener);
}

最佳答案

你应该实现 hibernate 的 Integrator .

这是一个例子:Hibernate 5 Event Listener Example

关于hibernate - 如何更改已弃用的 HibernateEntityManagerFactory(5.2.10) 以添加监听器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45336652/

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