Hibernate-reactive: Vert.X 休眠反应阶段设置示例

创建于 2021-06-07  ·  10评论  ·  资料来源: hibernate/hibernate-reactive

大家好,你能告诉我在哪里可以获得使用舞台模式设置带有休眠反应的 vertx web 的示例吗?

我只是找到了这个使用 Mutiny 的例子:
https://how-to.vertx.io/hibernate-reactive-howto/

提前致谢。

question

所有10条评论

我认为目前没有。

至于 Hibernate Reactive 会话工厂,您可以通过以下方式获得使用 Stage 模式的会话工厂:

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

然后,您可以使用以下命令将 Uni 转换为 CompletionStage(反之亦然):

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

出于好奇,你为什么要使用舞台模式?

感谢您的解释,
之前想过使用stage模式和vertx来减少第三方依赖,
除了我不熟悉兵变,我对使用这个库有一些疑问。 它是否稳定并有良好的讨论社区?

我很抱歉在问题中打开无关紧要的案例,下次我将使用论坛代替。

是的,Mutiny 非常稳定。 他们通常会很快回答问题您可以在此处找到有关社区的所有详细信息的网站: https :

无论如何,使用 CompletionStage API 没有错,我只是发现 Mutiny 可以帮助您编写更清晰的代码。
本周我将尝试创建一个使用 CompletionStage 的示例,但与此同时,您可以尝试使用 Hibernate Reactive 文档中的此表进行转换: http :

无需抱歉,我们喜欢反馈:-)

我不确定是否真的需要一个单独的例子来展示 Vert.x 和CompletionStage ,仅仅是因为这些例子非常相似。 我同意 Mutiny 是一个更适合 HR 使用的 API。 但我想如果你想这样做,它可能没有多少工作。 我不认为我会打扰。

我创建了不使用 Mutiny 的示例的JBang别名: https :

安装 JBang 后,您可以使用以下命令运行它:

jbang stage-verticle@DavideD/jbang-rep

你可以在你的ide(例如IDEA)中打开它:

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

(即使你不熟悉JBang,只要你把这个类复制到一个新项目中,并在顶部添加依赖,它就可以工作)。

无论如何,它应该让您了解如何使用 Future 和 CompletionStage。
但我仍然认为你应该试一试Mutiny。

干杯。

我正在关闭此问题,但如果您还有其他问题,请告诉我。

感谢@DavideD@gavinking ,我已经阅读并尝试了您提供的示例,并且它有效。 当然我会尝试使用 Mutiny,我只是发现它提供了一些开发人员体验而不是 Stage API,我想。 只是有时我必须受政策约束才能选择Stage或Mutiny。

问候

@arifpratama398我注意到示例中有几个错误。 我没有完成所有的承诺,我创建了两次工厂。 我已经更新了。 如果您使用的是 jbang,请确保使用jbang --fresh stage-verticle@DavideD/jbang-rep运行它。

此外,原始示例从不关闭工厂,但我已将其添加到 stop 方法中。
@gavinking当垂直停止时应该有一个工厂关闭,不是吗?

大概。

我想在这种情况下它没有任何区别,但对于实际应用程序要记住这一点。

此页面是否有帮助?
0 / 5 - 0 等级

相关问题

pqab picture pqab  ·  21评论

gavinking picture gavinking  ·  23评论

murphye picture murphye  ·  40评论

markusdlugi picture markusdlugi  ·  30评论

Thomodachi picture Thomodachi  ·  15评论