肥宅自学平台_人人成为技术开发者

肥宅人只等待您,联系我们吧,曾经的巅峰是否能回来?我们正在用心服务!

java一个rbmq的公共连接方法调用发送消息

 更新时间:2024-01-08 15:52:49   作者:肥宅-季波   我要评论(0)  

         下面是一个使用公共连接方法调用发送消息到 RabbitMQ 的示例:
  1. import com.rabbitmq.client.Channel;
  2. import com.rabbitmq.client.Connection;
  3. import com.rabbitmq.client.ConnectionFactory;
  4. import java.io.IOException;
  5. public class RabbitMQSender {
  6.     private static final String QUEUE_NAME = "hello";
  7.     private static final String EXCHANGE_NAME = "my_exchange";
  8.     private static final String ROUTING_KEY = "my_routing_key";
  9.     private static Connection connection;
  10.     public static void main(String[] args) throws Exception {
  11.         try {
  12.             // 创建连接
  13.             createConnection();
  14.             // 创建通道
  15.             Channel channel = connection.createChannel();
  16.             // 发送消息
  17.             sendMessage(channel, "Hello RabbitMQ!");
  18.             // 关闭通道
  19.             channel.close();
  20.         } finally {
  21.             // 关闭连接
  22.             closeConnection();
  23.         }
  24.     }
  25.     private static void createConnection() throws IOException {
  26.         // 创建连接工厂
  27.         ConnectionFactory factory = new ConnectionFactory();
  28.         factory.setHost("localhost");
  29.         factory.setUsername("guest");
  30.         factory.setPassword("guest");
  31.         // 创建连接
  32.         connection = factory.newConnection();
  33.     }
  34.     private static void closeConnection() throws IOException {
  35.         if (connection != null && connection.isOpen()) {
  36.             connection.close();
  37.         }
  38.     }
  39.     private static void sendMessage(Channel channel, String message) throws IOException {
  40.         // 声明交换机
  41.         channel.exchangeDeclare(EXCHANGE_NAME, "direct");
  42.         // 声明队列
  43.         channel.queueDeclare(QUEUE_NAME, false, false, false, null);
  44.         // 绑定队列到交换机
  45.         channel.queueBind(QUEUE_NAME, EXCHANGE_NAME, ROUTING_KEY);
  46.         // 发布消息到交换机
  47.         channel.basicPublish(EXCHANGE_NAME, ROUTING_KEY, null, message.getBytes("UTF-8"));
  48.         System.out.println("Sent: " + message);
  49.     }
  50. }

在上面的示例中,我们创建了一个 createConnection 方法用于创建连接,并在 main 方法中调用。然后,我们在 sendMessage 方法中发送消息到 RabbitMQ,并在 finally 块中调用 closeConnection 方法来关闭连接。

这样可以确保在发送消息结束后关闭连接,防止资源泄漏和连接问题,并提供了一个可重用的公共连接方法。



"小礼物走一走,来肥宅自学平台支持我"
评论区

评论

共条评论
  • 这篇文章还没有收到评论,赶紧来抢沙发吧~
客服中心在线客服
全心全意为平台用户服务
Copyright © 2017-2023 自学平台网站地图:去查看>
  • 肥宅人自己的自学平台
  • 人人都能成为平台讲师
  • 贡献你的力量壮大肥宅自学平台
  • 将自己的能力变现
  • 实现人生的第二职业
网址收藏平台安卓APP
微信公众号微信公众号

本站部分图片或者资源来自程序自动采集或卖家(商家)发布,如果侵犯了您的权益请与我们联系,我们将在24小时内删除!谢谢!

肥宅自学教程网是一个主打IT视频教程、自媒体运行、摄影剪辑等内容的资源学习交流平台。