1、使用
maven:
<!--RabbitMQ-->
<dependency>
<groupId>com.rabbitmq</groupId>
<artifactId>amqp-client</artifactId>
<version>3.4.1</version>
</dependency>
application.properties:
#rabbitMQ
spring.rabbitmq.host=127.0.0.1
spring.rabbitmq.port=5670
spring.rabbitmq.username=admin
spring.rabbitmq.password=admin
代码:
ConnectionUtil 类:
import com.exx.contract.common.utils.PropertyConstants;
import com.rabbitmq.client.Connection;
import com.rabbitmq.client.ConnectionFactory;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.io.IOException;
/**
* @Author: Phil
* @Description:连接工具类
* @Date:Create in 14:46 2020/3/2
* @Modified By:
*/
public class ConnectionUtil {
private final Logger logger = LoggerFactory.getLogger(this.getClass());
Connection connection;
private ConnectionUtil() throws IOException {
// 获取一个新的连接
connection = cf.newConnection();
}
public void close(){
try {
connection.close();
}
catch (Exception ex){
logger.error("RabbitMQ关闭TCP连接异常:"+ex.getMessage());
}
}
static ConnectionFactory cf;
static {
// 创建连接工厂
cf = new ConnectionFactory();
// 设置rabbitmq服务器IP地址
cf.setHost(PropertyConstants.getPropertiesKey("spring.rabbitmq.host"));
// 设置rabbitmq服务器用户名
cf.setUsername(PropertyConstants.getPropertiesKey("spring.rabbitmq.username"));
// 设置rabbitmq服务器密码
cf.setPassword(PropertyConstants.getPropertiesKey("spring.rabbitmq.password"));
// 设置rabbitmq服务器端口
cf.setPort(Integer.valueOf(PropertyConstants.getPropertiesKey("spring.rabbitmq.port")));
//cf.setPort(AMQP.PROTOCOL.PORT);
}
private static ConnectionUtil connectionUtil = null;
public static ConnectionUtil getConnectionUtil() throws IOException{
if(connectionUtil==null){
synchronized(ConnectionUtil.class){
if(connectionUtil=&#