是否仍要在MessageListener中注入服务?

  @Autowired
  @Qualifier("myServices")

  MyServices myServices;

  @Override
  public void onMessage(final Message message, final byte[] pattern) {
    myServices.call();
}

这样就不会注入服务。因为在@configuration中
    @Bean
MessageListenerAdapter messageListener() {
    return new MessageListenerAdapter( new RedisMessageListener() );
}

知道吗?
谢谢

最佳答案

这应该有效:(如果委托已经是MessageListener,则不需要MessageListenerAdapter):

@Component
public class MyListener implements MessageListener {
  @Autowired
  @Qualifier("myServices")
  MyServices myServices;

  @Override
  public void onMessage(final Message message, final byte[] pattern) {
    myServices.call();
  }
}

09-28 01:27