文章正文
springboot集成Redis队列的发布订阅功能
【文档】2020-04-23
简介springboot集成Redis队列的发布订阅功能
注册监听:
package com.example.demo.config; import com.example.demo.controller.RedisController; import com.fasterxml.jackson.annotation.JsonAutoDetect; import com.fasterxml.jackson.annotation.PropertyAccessor; import com.fasterxml.jackson.databind.ObjectMapper; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.data.redis.connection.RedisConnectionFactory; import org.springframework.data.redis.core.RedisTemplate; import org.springframework.data.redis.core.StringRedisTemplate; import org.springframework.data.redis.listener.PatternTopic; import org.springframework.data.redis.listener.RedisMessageListenerContainer; import org.springframework.data.redis.listener.adapter.MessageListenerAdapter; import org.springframework.data.redis.serializer.Jackson2JsonRedisSerializer; import org.springframework.data.redis.serializer.StringRedisSerializer; @Configuration public class RedisConfig { @Bean RedisMessageListenerContainer container(RedisConnectionFactory connectionFactory, MessageListenerAdapter listenerAdapter1, MessageListenerAdapter listenerAdapter2) { RedisMessageListenerContainer container = new RedisMessageListenerContainer(); container.setConnectionFactory(connectionFactory); // 每一个监听器messageListener都需要一个适配器,队列可以是同一个 container.addMessageListener(listenerAdapter1, new PatternTopic("redis:test")); container.addMessageListener(listenerAdapter2, new PatternTopic("redis:prod")); return container; } /** * 消息监听器适配器,绑定消息处理器,利用反射技术调用消息处理器的业务方法 * @return */ @Bean MessageListenerAdapter listenerAdapter1(RedisController redisController) { return new MessageListenerAdapter(redisController, "receiveMessage1"); } /** * 消息监听器适配器,绑定消息处理器,利用反射技术调用消息处理器的业务方法 * @return */ @Bean MessageListenerAdapter listenerAdapter2(RedisController redisController) { return new MessageListenerAdapter(redisController, "receiveMessage2"); } @Bean StringRedisTemplate template(RedisConnectionFactory connectionFactory) { return new StringRedisTemplate(connectionFactory); } }
消息发布:
/** * 消息发布者 * @return */ @RequestMapping("/redisTest") public String redisTest() { for(int i = 1; i <= 5; i++) { redisTemplate.convertAndSend("redis:test","通知你该开始了"); } redisTemplate.convertAndSend("redis:prod","通知你该结束了"); return ""; }
消息订阅:
package com.example.demo.controller; import org.springframework.stereotype.Component; @Component public class RedisController { public void receiveMessage1(String message) { System.out.println(message+":收到"); } public void receiveMessage2(String message) { System.out.println(message+":OK"); } }
打赏支持
感谢您的支持,加油!

打开微信扫码打赏,你说多少就多少
找书费时,联系客服快速查找!

在线客服8:30-22:30,若离线请留言!
获取教程,请联系在线客服!

在线客服8:30-22:30,若离线请留言!
热门阅读
-
大数据平台运维(初级) 9787121397455 新华三技术有限公司 电子工业出版社 PDF_出版时间:2020年10月.pdf
大数据平台运维(初级) 9787121397455 新华三技术有限公司 电子工业出版社 PDF_出版时间:2020年10月.pdf ...
-
五味子活性成分及化学合成 常俊标,宋传君著 合肥:中国科学技术大学出版社 PDF 9787312029301 2012.pdf
五味子活性成分及化学合成 常俊标,宋传君著 合肥:中国科学技术大学出版社 PDF 9787312029301 2012.pdf ...
-
支持向量机与基于核的机器学习导论 [英] 内洛·克里斯蒂安尼尼(Nello Cristianini),[英] 约翰·肖·泰勒(John Shawe-Taylor) 世界图书出版公司 9787519277017 PDF_出版时间:2020年10月.pdf
支持向量机与基于核的机器学习导论 [英] 内洛·克里斯蒂安尼尼(Nello Cristianini),[英] 约翰·肖·泰勒(John Shawe-Taylor) 世界图书出版公司 9787519277017 PDF_出版时间:2020年10月.pdf ...
-
气动光学效应校正 原理、方法与应用 张天序,洪汉玉,张新宇著 合肥:中国科学技术大学出版社 PDF 9787312033315 2014.pdf
气动光学效应校正 原理、方法与应用 张天序,洪汉玉,张新宇著 合肥:中国科学技术大学出版社 PDF 9787312033315 2014.pdf ...
-
机器学习导论 (土)阿培丁著 北京:机械工业出版社 PDF 9787111265245 2009.pdf
机器学习导论 (土)阿培丁著 北京:机械工业出版社 PDF 9787111265245 2009.pdf ...
-
机器学习算法导论 王磊,王晓东编著 北京:清华大学出版社 PDF 9787302524564 2019.pdf
机器学习算法导论 王磊,王晓东编著 北京:清华大学出版社 PDF 9787302524564 2019.pdf ...
-
名作精译 《中国翻译》英译汉选萃 杨平主编 青岛:青岛出版社 PDF 754361880 1998.pdf
名作精译 《中国翻译》英译汉选萃 杨平主编 青岛:青岛出版社 PDF 754361880 1998.pdf ...
-
统计机器学习导论 (日)杉山将(MASASHISUGIYAMA)著;谢宁,李柏杨,肖竹,罗宇轩等译 北京:机械工业出版社 PDF 9787111596790 2018.pdf
统计机器学习导论 (日)杉山将(MASASHISUGIYAMA)著;谢宁,李柏杨,肖竹,罗宇轩等译 北京:机械工业出版社 PDF 9787111596790 2018.pdf ...
-
机器学习导论 (美)米罗斯拉夫·库巴特(Miroslav Kubat)著 北京:机械工业出版社 PDF 7111548683 2016.pdf
机器学习导论 (美)米罗斯拉夫·库巴特(Miroslav Kubat)著 北京:机械工业出版社 PDF 7111548683 2016.pdf ...
-
教育大辞典 增订合编本 上下 顾明远主编 上海:上海教育出版社 PDF 7532053806 出版时间:1998.pdf
教育大辞典 增订合编本 上下 顾明远主编 上海:上海教育出版社 PDF 7532053806 出版时间:1998.pdf ...