zoukankan      html  css  js  c++  java
  • rabbitMQ学习(七)反馈模式

    反馈模式

    在消费端接收到消息后,会反馈给服务器信息。

    连接代码:

    import java.io.IOException;
    
    import com.rabbitmq.client.Channel;
    import com.rabbitmq.client.Connection;
    import com.rabbitmq.client.ConnectionFactory;
    
    public class GetChannel {
    	 private static Connection connection=null;
    	 private static Channel channel=null;
    	public static Channel getCh() throws IOException{
    		 ConnectionFactory factory = new ConnectionFactory();
    		    factory.setHost("localhost");
    		     connection = factory.newConnection();
    		     channel = connection.createChannel();
    		    return channel;
    	}
    	
    	public static void close() throws IOException{
    		if(channel!=null){
    			channel.close();
    		}
    		if(connection!=null){
    			connection.close();
    		}
    	}
    
    }
    

      发送消息端:

    import com.jiacl.finance.rabbitmq.exchange.GetChannel;
    import com.rabbitmq.client.Channel;
    import com.rabbitmq.client.MessageProperties;
    
    
    
    public class Send {
        final static String queueName="queuetwo";
        public static void  main(String args[]) throws Exception{
        	Channel channel = GetChannel.getCh();
            channel.queueDeclare(queueName, true,false,false,null);
            channel.basicPublish("",queueName,MessageProperties.PERSISTENT_TEXT_PLAIN,"fuck".getBytes());
            GetChannel.close();
        }
    }
    

      接收消息端:

    import com.jiacl.finance.rabbitmq.exchange.GetChannel;
    import com.rabbitmq.client.Channel;
    import com.rabbitmq.client.QueueingConsumer;
    
    
    public class recvier {
        final static String queueName="queuetwo";
    
        public static void main(String[] args)throws Exception {
        	Channel channel = GetChannel.getCh();
            channel.queueDeclare(queueName, true, false, false, null);
            channel.basicQos(1);
            QueueingConsumer consumer=new QueueingConsumer(channel);
            channel.basicConsume(queueName,false,consumer);
            while (true){
               QueueingConsumer.Delivery delivery=consumer.nextDelivery();
                String message = new String(delivery.getBody());
                System.out.println(message);
                channel.basicAck(delivery.getEnvelope().getDeliveryTag(),true); 
            }
    
        }
    
    
    }
    

      

  • 相关阅读:
    使用C#调用系统API实现锁定计算机
    阶段性总结
    心情状态所困
    VMware虚拟机网络配置相关备忘
    数据库学习第一篇
    给window xp sp2设置共享文件夹
    转报竞赛实操试题
    数据库视频笔记
    Android开发从零开始,搭建交叉编译环境
    排故总结
  • 原文地址:https://www.cnblogs.com/tietazhan/p/5692823.html
Copyright © 2011-2022 走看看