Rabbitmq应用文档

Rabbitmq应用文档

项目集成rabbitmp

修改文件

pom.xml

4.3.5.RELEASE

2.8.6

org.springframework.amqp

spring-rabbit

1.7.0.RELEASE

applicationContext.xml

增加文件

applicationContext-rabbit.xml-------部署的时候需要修改该文件内的用户名,密码,ip地址,端口号等

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xmlns:rabbit="http://www.springframework.org/schema/rabbit"

xsi:schemaLocation="http://www.springframework.org/schema/beans

http://www.springframework.org/schema/beans/spring-beans.xsd

http://www.springframework.org/schema/rabbit

http://www.springframework.org/schema/rabbit/spring-rabbit.xsd">

 

 

class="org.springframework.amqp.rabbit.config.SimpleRabbitListenerContainerFactory">

username="bksx"

password="bksx"

addresses="130.10.8.207:5672,130.10.8.208:5672,130.10.8.209:5672"

publisher-confirms="true"

/>

message-converter="jackson2JsonMessageConverter"

receive-timeout="120000"

exchange="exchangeTest">

class="org.springframework.amqp.support.converter.Jackson2JsonMessageConverter">

 

 

 

业务文件

消息发送端调用rabbitMq代码:

消息同步返回

@Autowired

private AmqpTemplate amqpTemplate;

private final String KEY="queueTestChris"; {

// 居住证

Object msg = new Object; zdbh:站点编号;yyrq:yyyyMMddHHmmss预约日期

Object sfyycg = (Object) amqpTemplate.convertSendAndReceive(KEY, fo);

}

消息异步返回

@Autowired

private AsyncRabbitTemplate asyncRabbitTemplate;

AsyncRabbitTemplate.RabbitConverterFuture RabbitConverterFuture = asyncRabbitTemplate.convertSendAndReceive(KEY, o);

RabbitConverterFuture.addCallback(new ListenableFutureCallback(){

@Override

public void onSuccess(Object o) {

//TODO 处理成功调用

}

 

@Override

public void onFailure(Throwable throwable) {

//TODO处理失败调用

}

});

消息处理端调用rabbitMq代码

@Service

public class ChrisConsumer {

private Logger logger = LoggerFactory.getLogger(ChrisConsumer.class);

 

@RabbitListener(queues = "queueChris")

@SendTo

public Object messageHandler(Object o) throws Exception {

 

//TODO 消息处理端业务处理代码

return result; //业务返回对象,可以自定义类型

}

}

你可能感兴趣的:(git)