大家知道在springboot中是如何来整合redis队列吗?目前广泛流行使用的就是redis,所以今天小编就给大家来理理在springboot中是如何整合redis队列的,接下来让我们一起来了解吧。
一.首先在pom文件里面加上相关的依赖
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> </dependency>
二.创建消息接收者
变量、方法及构造函数进行标注,完成自动装配的工作。 通过 @Autowired的使用来消除 set ,get方法。
@Autowired public Receiver(CountDownLatch latch) { this.latch = latch; } public void receiveMessage(String message) { LOGGER.info("收到的消息: <" + message + ">"); latch.countDown(); } }
以上基本条件达成后,以下是实现的三要素:
一个连接工厂
一个消息监听容器
Redis template
三.在application.java注入消息接收者
@Bean Receiver receiver(CountDownLatch latch) { return new Receiver(latch); } @Bean CountDownLatch latch() { return new CountDownLatch(1); } @Bean StringRedisTemplate template(RedisConnectionFactory connectionFactory) { return new StringRedisTemplate(connectionFactory); }
四、注入消息监听容器
//必要的redis消息队列连接工厂 @Bean Receiver receiver(CountDownLatch latch) { return new Receiver(latch); } //必要的redis消息队列连接工厂 @Bean CountDownLatch latch() { return new CountDownLatch(1); } //redis模板 @Bean StringRedisTemplate template(RedisConnectionFactory connectionFactory) { return new StringRedisTemplate(connectionFactory); } //注入消息监听器容器 @Bean RedisMessageListenerContainer container(RedisConnectionFactory connectionFactory, MessageListenerAdapter listenerAdapter) { RedisMessageListenerContainer container = new RedisMessageListenerContainer(); container.setConnectionFactory(connectionFactory); container.addMessageListener(listenerAdapter, new PatternTopic("msg")); return container; } //注入消息监听器容器 @Bean MessageListenerAdapter listenerAdapter(Receiver receiver) { return new MessageListenerAdapter(receiver, "receiveMessage"); }
五、最后进行测试,小编这里用的是单元测试
好了,今天内容就讲到这里了,以上的Java入门的相关知识是否已经明白了呢?想要了解更多,请继续关注本网站。