com.supermap.messagequeue

类 AMQPManager



  • public class AMQPManager
    extends InternalHandle
    AMQP管理类,基于AMQP协议实现的消息总线客户端方案。

    负责队列、交换机、接收端、发送端的创建和绑定。通过将队列和交换机绑定,并设定唯一的routingkey, 来实现队列内的消息收发功能。

    注意使用时,接收端需要在子线程中接收消息,并且接收消息是阻塞型的。

    • 构造器概要

      构造器 
      构造器和说明
      AMQPManager()
      构造函数
    • 方法概要

      所有方法 实例方法 具体方法 
      限定符和类型 方法和说明
      boolean bindQueue(java.lang.String exchange, java.lang.String queue, java.lang.String bindingKey)
      通过指定的routingkey绑定队列与交换机
      boolean connection(java.lang.String ip, int port, java.lang.String hostName, java.lang.String usrName, java.lang.String password, java.lang.String clientID)
      建立连接
      boolean declareExchange(java.lang.String name, AMQPExchangeType exchangeType)
      声明交换机
      boolean declareQueue(java.lang.String queueName)
      声明队列
      boolean deleteExchange(java.lang.String name)
      删除交换机
      boolean deleteQueue(java.lang.String queueName)
      删除队列
      void disconnection()
      断开连接
      AMQPReceiver newReceiver(java.lang.String queueName)
      创建一个接收者
      AMQPSender newSender()
      创建一个发送端
      boolean unbindQueue(java.lang.String queue, java.lang.String exchange, java.lang.String bindingKey)
      解除队列与交换机的绑定
      • 从类继承的方法 java.lang.Object

        equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • 构造器详细资料

      • AMQPManager

        public AMQPManager()
        构造函数
    • 方法详细资料

      • connection

        public boolean connection(java.lang.String ip,
                                  int port,
                                  java.lang.String hostName,
                                  java.lang.String usrName,
                                  java.lang.String password,
                                  java.lang.String clientID)
        建立连接
        参数:
        ip - 服务IP
        port - 端口号
        hostName - 虚拟主机名
        usrName - 用户名
        password - 用户密码
        clientID - 用户自定义客户端名,可以用来区分是谁发送的消息
        返回:
        是否连接成功
      • disconnection

        public void disconnection()
        断开连接
      • newSender

        public AMQPSender newSender()
        创建一个发送端
        返回:
        返回发送端对象
      • newReceiver

        public AMQPReceiver newReceiver(java.lang.String queueName)
        创建一个接收者
        参数:
        queueName - 队列名
        返回:
        返回接收端对象
      • declareExchange

        public boolean declareExchange(java.lang.String name,
                                       AMQPExchangeType exchangeType)
        声明交换机
        参数:
        name - 交换机名称
        exchangeType - 交换机类型
        返回:
        声明成功返回true,否则返回false
      • deleteExchange

        public boolean deleteExchange(java.lang.String name)
        删除交换机
        参数:
        name - 交换机名
        返回:
        删除成功返回true,否则返回false
      • declareQueue

        public boolean declareQueue(java.lang.String queueName)
        声明队列
        参数:
        queueName - 队列名
        返回:
        声明成功返回true,否则返回false
      • deleteQueue

        public boolean deleteQueue(java.lang.String queueName)
        删除队列
        参数:
        queueName - 队列名
        返回:
        删除成功返回true,否则返回false
      • bindQueue

        public boolean bindQueue(java.lang.String exchange,
                                 java.lang.String queue,
                                 java.lang.String bindingKey)
        通过指定的routingkey绑定队列与交换机
        参数:
        exchange - 交换机名
        queue - 队列名
        bindingKey - 用于绑定的key
        返回:
        绑定成功返回true,否则返回false
      • unbindQueue

        public boolean unbindQueue(java.lang.String queue,
                                   java.lang.String exchange,
                                   java.lang.String bindingKey)
        解除队列与交换机的绑定
        参数:
        queue - 队列名
        exchange - 交换机名
        bindingKey - 用于队列和交换机绑定的key
        返回:
        解除绑定成功返回true,否则返回false