gpt4 book ai didi

Java EE "wait"概念

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

对于需要“等待”数据的 ejb,最佳解决方案是什么?我有一个 ejb,它会检查数据库表中的某些数据,如果数据不存在,则需要等待 x 秒并再次检查。我知道 Java EE 规范中不推荐 Thread.sleep/Thread.wait 和此类操作。然而,必须有一个现实的解决方案来解决这个问题。其他一些阅读建议您必须启动计时器或其他东西,但是我确实需要阻止请求调用,直到该数据可用为止,这消除了时间表或计时器解决方案。还有其他想法吗?

最佳答案

您可以使用 EJB 计时器来执行此操作,但老实说“轮询”数据是一种资源浪费。更好的方法是使用 JMS。数据的生产者是否将数据放入数据库中,然后将消息放入队列中。消息和数据库写入将在同一事务中一起提交。之后您要做的就是在 JMS 队列上建立一个监听器,该监听器会在消息到达时触发。就这样,不需要“轮询”。

如果您需要具体示例,请告诉我,我可以稍微扩展一下我的答案。

关于Java EE "wait"概念,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16178118/

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