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); 
            }
    
        }
    
    
    }
    

      

  • 相关阅读:
    MongoDB配置客户端
    fatal: refusing to merge unrelated histories
    Connection reset by [server_ip] port 22 (hexo d 部署博客出错)
    hexo d 部署博客时出错
    git reset --hard xxxxxxx
    查看MySQL版本的命令及常用命令
    log4j 知识点
    ssh 登录报错 packet_write_wait: Connection to x.x.x.x port 22: Broken pipe
    Windows&Word 常用快捷键
    Apache所有开源项目文件
  • 原文地址:https://www.cnblogs.com/tietazhan/p/5692823.html
Copyright © 2011-2022 走看看