Hibernate-reactive: Ejemplo de configuración de la etapa reactiva de hibernación de Vert.X

Creado en 7 jun. 2021  ·  10Comentarios  ·  Fuente: hibernate/hibernate-reactive

Hola chicos, ¿pueden decirme dónde puedo obtener un ejemplo para configurar vertx web con hibernate-reactivo usando el modo Stage?

Solo pude encontrar este ejemplo que usa Mutiny:
https://how-to.vertx.io/hibernate-reactive-howto/

Gracias por adelantado.

question

Todos 10 comentarios

No creo que haya uno en este momento.

En cuanto a la fábrica de sesiones de Hibernate Reactive, puede obtener una que use el modo Stage a través de:

  emf = Persistence
    .createEntityManagerFactory("pg-demo", props)
    .unwrap(Stage.SessionFactory.class);

Luego puede convertir un Uni en un CompletionStage (y viceversa) con:

Uni uni = ...
CompletionStage stage = uni.subscribeAsCompletionStage();
Uni uni =Uni.createFrom().completionStage( stage );

Por curiosidad, ¿por qué quieres usar el modo Stage?

Gracias por la explicación,
anteriormente pensé en usar el modo de escenario y vertx para reducir las dependencias de terceros,
además, no estoy familiarizado con el motín, y tenía algunas dudas para usar esta biblioteca. ¿Es estable y tiene una buena comunidad para debatir?

Lo siento por abrir un caso insignificante en cuestión, la próxima vez usaré foros en su lugar.

Sí, Mutiny es bastante estable. y generalmente responden a las preguntas con bastante rapidez. Puede encontrar el sitio web con todos los detalles sobre la comunidad aquí: https://smallrye.io/smallrye-mutiny/

De todos modos, no hay nada de malo en usar la API de CompletionStage, solo encuentro que Mutiny te ayuda a escribir un código más limpio.
Intentaré crear un ejemplo que use CompletionStage esta semana pero, mientras tanto, puede intentar convertirlo usando esta tabla en los documentos de Hibernate Reactive: http://hibernate.org/reactive/documentation/1.0/reference/html_single / # _ apis_for_chaining_reactive_operations

No hay necesidad de disculparse, nos gustan los comentarios :-)

No estoy seguro de que exista una gran necesidad de un ejemplo separado que muestre Vert.xy CompletionStage , simplemente porque los ejemplos serían muy similares. Y estoy de acuerdo en que Mutiny es una API mucho más cómoda para usar con RRHH. Pero supongo que si quieres hacerlo, probablemente no sea mucho trabajo. No creo que me moleste.

Creé este alias de https://github.com/DavideD/jbang-rep/blob/main/StageVerticle.java

Una vez que haya instalado JBang, puede ejecutarlo con:

jbang stage-verticle@DavideD/jbang-rep

Y puedes abrirlo en tu ide (IDEA por ejemplo) con:

jbang edit --open  stage-verticle@DavideD/jbang-rep

(Incluso si no está familiarizado con JBang, siempre que copie esta clase en un nuevo proyecto y agregue las dependencias en la parte superior, funcionará).

De todos modos, debería darte una idea sobre cómo usar Future y CompletionStage.
Pero sigo pensando que deberías darle una oportunidad a Mutiny.

Salud.

Estoy cerrando este problema, pero avíseme si tiene más preguntas.

Gracias a @DavideD y @gavinking , leí y probé el ejemplo que diste, y funciona. Seguro que intentaré usar Mutiny, me acabo de enterar de que proporciona algunas experiencias de desarrollador que Stage API, creo. Es solo que a veces tengo que estar obligado por la política a elegir Stage o Mutiny.

Saludos

@ arifpratama398 He notado un par de errores en el ejemplo. No estaba cumpliendo todas las promesas y estaba creando la fábrica dos veces. Lo he actualizado. Si está utilizando jbang, asegúrese de ejecutarlo con jbang --fresh stage-verticle@DavideD/jbang-rep .

Además, el ejemplo original nunca cierra la fábrica, pero lo agregué al método de detención.
@gavinking Debería haber un cierre de fábrica cuando se detiene el verticle, ¿no es así?

Probablemente.

Supongo que en este caso no supone ninguna diferencia, pero es algo a tener en cuenta para aplicaciones reales.

¿Fue útil esta página
0 / 5 - 0 calificaciones