spring-projects / spring-framework

Spring Framework
https://spring.io/projects/spring-framework
Apache License 2.0
56.77k stars 38.16k forks source link

Add Hibernate Reactive support #26223

Closed hantsy closed 1 year ago

hantsy commented 3 years ago

See: http://hibernate.org/reactive/documentation/1.0/reference/html_single/

Change the current Hibernate/JPA support and make it is easy to expose an EntityManagerFactory to use Hibernate Reactive.

Currently, Hibernate Reactive supports Java 8 Completable Stage and Munity, see #26222. Also hope add Reactor API support to the EMFactory.

lazyskulptor commented 1 year ago

I'm making bridge library between Spring and Hibernate Reactive. I Hope it helps in any way. And give some advice.

hantsy commented 1 year ago

It is not difficult to integrate Spring with Hibernate Reactive from scratch, check https://itnext.io/integrating-hibernate-reactive-with-spring-5427440607fe

lazyskulptor commented 1 year ago

It is not difficult to integrate Spring with Hibernate Reactive from scratch, check https://itnext.io/integrating-hibernate-reactive-with-spring-5427440607fe

Thanks. I read this article before. I got help a lot from there. What I'm making is auto implementation for Repository Interface, Transaction Manager and Query Method. I've implemented auto implementation for Repository interface but had difficulties to make Query Method. It's quite difficult how Query Method works.

Anyway, I think this could be help for this issue even it's incomplete and needs more test.

I've implemented Auto creation for Repository Interface and Transaction Manager. But Transaction Manager also needs to be implemented for Isolation and Propagation.

jhoeller commented 1 year ago

We still have no plans to provide out-of-the-box support for Hibernate Reactive itself, I'm therefore closing this ticket. If there is anything that blocks a custom integration arrangement there, e.g. some missing flexibility in our general reactive support, please create a dedicated ticket for it.

hantsy commented 1 year ago

@lazyskulptor Spring and Spring Data have no plan to support it.

If you are stick on Hibernate Reative and Repository pattern, consider moving to Micronaut, it is easy to migrate micronuat if you have some Spring Boot experience.

There is a Hibernate Reactive module in Micronaut to satisfy all of your requirements.

Check my Micronaut example project: https://github.com/hantsy/micronaut-sandbox/tree/master/data-hibernate-reactive