Java实现rabbitMQ向MQ里推送消息

配置文件application.properties里配置rabbitMQ的ip和端口,如果没有配置username和password,就是mq安装时默认的用户名密码:

spring.rabbitmq.host=127.0.0.1
spring.rabbitmq.port=5672
spring.rabbitmq.virtual-host=/

业务代码:

1     public void send(String msg, ExchangeEnum exchangeEnum, QueueEnum queueEnum, Class msg_class) throws Exception {
2         //绑定交换机和队列
3         this.bindExchangeAndQueue(exchangeEnum, queueEnum);
4 //        Message message = MessageBuilder.withBody(new ObjectMapper().writeValueAsBytes(msg)).build();
5         Object parseObject = JSONObject.parseObject(msg, msg_class);
6         //推送消息
7         rabbitTemplate.convertAndSend(exchangeEnum.getName(), queueEnum.getName(), parseObject);
8     }
复制代码
    /**
     * 绑定 队列与交换机
     * 
     * @param exchangeEnum
     * @param queueEnum
     */
    private void bindExchangeAndQueue(ExchangeEnum exchangeEnum, QueueEnum queueEnum) {

        amqpAdmin.declareBinding(new Binding(queueEnum.getName(), Binding.DestinationType.QUEUE, exchangeEnum.getName(),
                queueEnum.getName(), null));
    }
复制代码

 

posted @   leviH  阅读(214)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 通过 API 将Deepseek响应流式内容输出到前端
点击右上角即可分享
微信分享提示