消息中间件RabbitMQ系列,对直连模式的总结,也就是优化代码,对冗余的代码提取成为工具类(五)

2020-11-20 14:47:48 浏览数 (1)

之前我们已经对直连模式进行了讲解,并且用代码实现了发送端和接收端,但是发送端和接收端的代码有很多的重复的,我们就需要优化代码,提取冗余的代码为工具类。

代码语言:javascript复制
package utils;


import com.rabbitmq.client.Channel;
import com.rabbitmq.client.Connection;
import com.rabbitmq.client.ConnectionFactory;

import java.io.IOException;
import java.util.concurrent.TimeoutException;

/**
 * @author 
 * @date 2020/10/20--13:55
 */
public class RabbitMqUtils {
    private static ConnectionFactory connectionFactory;
    static {
        connectionFactory = new ConnectionFactory();
        //        创建连接mq的连接工厂对象,这个是依赖里面的类,我们只需要拿过来创建对象就可以了

//        设置连接rabbitmq的ip
        connectionFactory.setHost("192.168.40.145");
//        设置端口号
        connectionFactory.setPort(5672);
//        设置连接的虚拟的主机
        connectionFactory.setVirtualHost("/ems");
//        设置访问虚拟主机的用户名和密码
        connectionFactory.setUsername("ems");
        connectionFactory.setPassword("123");
    }
//    定义提供连接对象的方法
    public static Connection  getConnection()  {
        try {
            return  connectionFactory.newConnection();
        } catch (Exception e) {
            e.printStackTrace();
        }
        return  null;
    }
    
//关闭通道和关闭连接的方法
    public  static void closeConnectionAndChannel(Channel channel,Connection coon) {
        try {

            if (channel!=null) channel.close();
            if ( coon!=null)coon.close();
        } catch (Exception e) {
            e.printStackTrace();
        }

    }

}

0 人点赞