RabbitMq学习(2) queueDeclare()/ basicPublish() API详解

一、queueDeclare(…)

queueDeclare()用于实现通道与队列的绑定。它包含5个参数。
String queue: 被绑定的消息队列名,当该消息队列不存在时,将新建该消息队列
Boolean durable: 是否持久化消息队列, 该参数持久化的仅为队列,而不包含队列中的消息
Boolean exclusive: 该通道是否独占该队列
Boolean autoDelete: 消费完成时是否删除队列, 该删除操作在消费者彻底断开连接之后进行。
Map<String, Object> arguments:其他配置参数

 /**
     * QueueDeclare实现方法
     * @param queue 
     * @param durable
     * @param exclusive
     * @param autoDelete
     * @param arguments
     * @return
     * @throws IOException
     */
    public com.rabbitmq.client.AMQP.Queue.DeclareOk queueDeclare(String queue, boolean durable, boolean exclusive, boolean autoDelete, Map<String, Object> arguments) throws IOException {
        com.rabbitmq.client.AMQP.Queue.DeclareOk ok = this.delegate.queueDeclare(queue, durable, exclusive, autoDelete, arguments);
        this.recordQueue(ok, queue, durable, exclusive, autoDelete, arguments);
        return ok;
    }

二、basicPublish(…)

basicPublish() 方法是基础的发布消息方法,它有四个参数
String exchange : 交换机名, 当不使用交换机时,传入“”空串。
String routingKey :(路由地址) 发布消息的队列, 无论channel绑定那个队列,最终发布消息的队列都有该字串指定
AMQP.BasicProperties props :消息的配置属性,例如 MessageProperties.PERSISTENT_TEXT_PLAIN 表示消息持久化。
byte[] body :消息数据本体, 必须是byte数组

 /**
     * basicPublish实现
     * @param exchange
     * @param routingKey
     * @param props
     * @param body
     * @throws IOException
     */
    public void basicPublish(String exchange, String routingKey, AMQP.BasicProperties props, byte[] body) throws IOException {
        this.basicPublish(exchange, routingKey, false, props, body);
    }
  • 6
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值