<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                ## 1.配置管道《監聽器容器》 ### 注意 redis的發布消息必須馬上消費,否則就會丟失。只能消費一次 ~~~ /** * 監聽器容器 在配置類中配置 * 負責信息監聽的所有線程并分到配監聽器中進行處理 * * @param * @return */ @Bean RedisMessageListenerContainer container(RedisConnectionFactory redisConnectionFactory, MessageListenerAdapter messageListenerAdapter) { //Redis消息監聽器 RedisMessageListenerContainer container = new RedisMessageListenerContainer(); // 設置工廠 container.setConnectionFactory(redisConnectionFactory); //設置監聽者綁定的管道 ArrayList<Topic> topics = new ArrayList<>(); topics.add(new PatternTopic("log")); // 第一個參數是監聽者 第二個是監聽的管道 container.addMessageListener(messageListenerAdapter, topics); return container; } /** * 消息監聽器適配器 能將消息委托給目標方法 * @param messageListener * @return */ @Bean public MessageListenerAdapter messageListenerAdapter(MessageListener messageListener) { return new MessageListenerAdapter(messageListener); } ~~~ ## 2.配置消息訂閱者 ~~~ /** * 信息訂閱者 * @author ZengMingyong * @since 2022/2/27 */ @Slf4j @Component public class Subscriber implements MessageListener { @Autowired private RedisTemplate redisTemplate; /** * 信息處理 * @param message 信息管道和信息內容 * @param pattern */ @Override public void onMessage(Message message, byte[] pattern) { Object channel = redisTemplate.getKeySerializer().deserialize(message.getChannel()); Object body = redisTemplate.getValueSerializer().deserialize(message.getBody()); log.info("消息管道:{},消息:{}",channel,body); } } ~~~ # 3.發布者 ~~~ /** * 發布者 * @return */ @GetMapping("/s") public void index() { HashMap<String, String> map = new HashMap<>(); map.put("admin","user"); map.put("username","zhangshan"); redisTemplate.convertAndSend("log",map); } ~~~
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看