异步 JMS(Java 消息服务)消费者与实际 MDB(消息驱动 Bean)之间有什么区别。我看到的唯一区别是 MDB 类
有 @MessageDriven
异步 JMS 使用者没有的注释。
还有什么我想念的吗?
最佳答案
在您的情况下,您的 MDB 充当 JMS 使用者。 MDB 是 EJB 特定术语,消费者是 JMS 术语。 JMS 使用者也可以是消息驱动的 POJO,即 不是 从技术上讲是 EJB。
对评论的回答
A1.是的,除非 JMS 使用者碰巧由 EJB 或 Spring 容器等容器管理,否则不能像 EJB 一样对普通 JMS 使用者进行池化/管理是正确的。
A2。 MDB 实际上只是满足了与 EJB 进行异步通信的要求。当它们基于 JMS 时,您的 MDB 在技术上是一个 JMS 消费者 以及。但是 MDB 也可以是非基于 JMS 的,例如:基于 JCA(Java 连接器架构)的 MDB。您可以查看此帖子以了解有关基于非 JMS 的 MDB 的更多详细信息:http://debupanda.blogspot.com/2006/08/using-ejb-30-message-driven-bean-with.html
关于jakarta-ee - JMS 消费者和消息驱动 Bean (MDB) 之间有什么区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5655673/