Redis
 sql >> Base de données >  >> NoSQL >> Redis

Redis - Envisagez de renommer l'un des beans ou d'activer le remplacement en définissant spring.main.allow-bean-definition-overriding=true

Je ne sais pas si c'est un bogue, mais si vous donnez un nom autre que redisMessageListenerContainer c'est-à-dire que Spring considérera le nom du haricot, alors cela fonctionnera bien.

@Bean
    RedisMessageListenerContainer listener(RedisConnectionFactory rcf) {
        MessageListener ml = (message, pattern) -> {
            String str = new String(message.getBody());
            log.info("message from ' " + TOPIC + "':'" + str);
        };

        RedisMessageListenerContainer mlc = new RedisMessageListenerContainer();
        mlc.setConnectionFactory(rcf);
        mlc.addMessageListener(ml, new PatternTopic(TOPIC));
        return mlc;
    }