我正在尝试从队列编写用于JMS消息处理的多线程实现。

我已经尝试使用DefaultMessageListenerContainer和SimpleMessageListenerContainer类。

我的问题是,无论我如何配置,似乎都只是实例化了MessageListener类的单个实例。这迫使我不必要地编写无状态或线程安全的MessageListener实现,因为我已将ListenerContainer配置为使用多个线程(concurrentConsumers = 8)。

有什么明显的解决方案可以解决吗?

最佳答案

这是设计使然。 MessageListener是您注入(inject)Spring的依赖项-它无法实例化新的依赖项。



你让那听起来像是一件坏事。编写MessageListener是一个好主意,Spring消除了这样做的诱惑。

09-05 20:59