使用SessionFactory配置Hibernate 4.3以使用@PrePersist [英] Configure Hibernate 4.3 with SessionFactory to use @PrePersist

查看:47
本文介绍了使用SessionFactory配置Hibernate 4.3以使用@PrePersist的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试通过此博客步骤进行操作.

I am trying do it throught this blog steps.

http://leakfromjavaheap.blogspot. com.es/2013/08/prepersist-and-preupdate-not-working.html

但是从Hibernate 4.3开始,将删除hibernate-entitymanager.jar中的事件包.

But starting from Hibernate 4.3, events package in hibernate-entitymanager.jar are removed.

另一方面,我一直在阅读有关拦截器和事件的信息. http://docs.jboss.org/hibernate/orm/4.3/manual/zh-CN/html_single/#events

In another hand, I had been reading about interceptors and events. http://docs.jboss.org/hibernate/orm/4.3/manual/en-US/html_single/#events

这仅仅是实现@PrePersist行为的两种方法吗?还是可以在SessionFactory中使用@EntityListeners批注?尽管我希望赢得@PrePersist注释兼容性.

Are this only two ways to implement @PrePersist behaviour? or could use @EntityListeners annotation with SessionFactory?. Although I would prefer win @PrePersist annotation compatibility.

谢谢.

推荐答案

对于Hibernate 4,您可以使用Integerator spi方法.

With Hibernate 4, you can use Integerator spi approach.

尽管休眠团队建议使用JPA EntityManager,但有时您只想继续使用带有JPA批注的旧式SessionFactory.

Although the hibernate team suggest to use JPA EntityManager, but sometime you just want to keep using the good old SessionFactory with JPA annotations.

  1. 包括org.hibernate:hibernate-entitymanager作为依赖项(假设您正在使用maven和pom片段,如下所示):
  1. Include org.hibernate:hibernate-entitymanager as dependency (assuming you are using maven, pom snippet as follows):

<依赖性>
    < groupId> org.hibernate</groupId>
    < artifactId>休眠实体管理器</artifactId>
    < version> 4.*</version>
</dependency>

<dependency>
     <groupId>org.hibernate</groupId>
     <artifactId>hibernate-entitymanager</artifactId>
     <version>4.*</version>
</dependency>

  • 创建休眠集成器注册文件/META-INF/services/org.hibernate.integrator.spi.Integrator 并注册JpaIntegrator以通过粘贴以下内容来启用JPA事件注释:

  • Create hibernate integrator register file /META-INF/services/org.hibernate.integrator.spi.Integrator and register JpaIntegrator to enable JPA Event Annotations by pasting following content:

    org.hibernate.jpa.event.spi.JpaIntegrator

    org.hibernate.jpa.event.spi.JpaIntegrator

  • 参考:
    arkuarku.wordpress.com/2014/10/23/spring-hibernate4-enable-jpa-prepersistpreupdate-annotation-using-session-factroy/
    参见:
    https://docs.oracle.com/javase/tutorial/sound/SPI -intro.html
    http://in.relation.to/2012/01/09/event-listener-registration/

    Ref:
    arkuarku.wordpress.com/2014/10/23/spring-hibernate4-enable-jpa-prepersistpreupdate-annotation-using-sessionfactroy/
    See:
    https://docs.oracle.com/javase/tutorial/sound/SPI-intro.html
    http://in.relation.to/2012/01/09/event-listener-registration/

    这篇关于使用SessionFactory配置Hibernate 4.3以使用@PrePersist的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

    查看全文
    登录 关闭
    扫码关注1秒登录
    发送“验证码”获取 | 15天全站免登陆