码迷,mamicode.com
首页 > 其他好文 > 详细

rabbitmq学习——helloworld

时间:2017-10-10 13:12:31      阅读:178      评论:0      收藏:0      [点我收藏+]

标签:ann   rate   需要   ide   llb   throw   rabbitmq   except   class   

public class Send {

public static void main(String[] args) throws Exception{
ConnectionFactory factory = new ConnectionFactory();
factory.setHost("localhost");
Connection connection = factory.newConnection();
Channel channel = connection.createChannel();

/*获取tcp其中的一个通道后 进行队列声明
参数1 队列名字
参数2 是否持久化
参数3 只被一个链接使用,链接关闭后删除
参数4 最后一个消费者退订后删除*/
channel.queueDeclare("wuqidi", false, false, false, null);

/*发布到队列中
* 参数1 交换机 默认交换机
* 参数2 路由key
* 参数3 参数
* 参数4 发送的信息 proCon
* */
channel.basicPublish("", "wuqidi", null, "十九大重要会议在即。".getBytes());

channel.close();
connection.close();
}
}

 

public class Receive {
public static void main(String[] args) throws Exception{
ConnectionFactory factory = new ConnectionFactory();
factory.setHost("localhost");
Connection connection = factory.newConnection();
Channel channel = connection.createChannel();

/*获取tcp其中的一个通道后 进行队列声明
参数1 队列名字
参数2 是否持久化
参数3 只被一个链接使用,链接关闭后删除
参数4 最后一个消费者退订后删除*/
channel.queueDeclare("wuqidi", false, false, false, null);

//callback
com.rabbitmq.client.Consumer callback = new Consumer() {

@Override
public void handleShutdownSignal(String consumerTag,
ShutdownSignalException sig) {
// TODO Auto-generated method stub
System.out.println("关闭信号源" + consumerTag);

}

@Override
public void handleRecoverOk(String consumerTag) {
// TODO Auto-generated method stub
System.out.println("返回ok" + consumerTag);
}

@Override
public void handleDelivery(String arg0, Envelope arg1,
BasicProperties arg2, byte[] body) throws IOException {
// TODO Auto-generated method stub
System.out.println(arg0 +"---" + new String(body, "utf-8"));
}

@Override
public void handleConsumeOk(String consumerTag) {
System.out.println("返回123ok" + consumerTag);

}

@Override
public void handleCancelOk(String consumerTag) {
System.out.println("信号源ok" + consumerTag);

}

@Override
public void handleCancel(String consumerTag) throws IOException {
System.out.println("返回consumerTag" + consumerTag);
}
};
channel.basicConsume("wuqidi", callback);
}
}

后期如果用spring搭建框架,可以在xml中进行声明queue,包括绑定,监听等。服务层中只需要获取amqptemplate然后发送或者接受即可。

rabbitmq学习——helloworld

标签:ann   rate   需要   ide   llb   throw   rabbitmq   except   class   

原文地址:http://www.cnblogs.com/core404/p/7644855.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!