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

      

  • 相关阅读:
    Mysql性能优化
    PHP IF判断简写
    PHP与MYSQL事务处理
    js获取select标签选中的值
    oralce 的安装以及plsql的配置的html连接
    mysql 中启动服务的命令 、登录命令、退出命令 mysql 的常用命令
    oracle 中 某个字段的长度不够的sql 语句
    随机获得id的方法
    java中解析excel 批量插入数据库
    java 调用存储过程
  • 原文地址:https://www.cnblogs.com/tietazhan/p/5692823.html
Copyright © 2020-2023  润新知