JAVA连接RabbitMQ失败

Java连接RabbitMQ失败

在windows中安装了RabbitMQ之后,在Spring中创建ConnectionFactory时发现总是超时,而且queue和exchange也没有正确routing。

经排查,发现是创建ConnectionFactory时使用的guest用户,而guest用户只能用作本地登录的。需要新建一个用户,并赋予对应的权限。对应的命令为:

rabbitmqctl add_user root root
rabbitmqctl set_user_tags root administrator
rabbitmqctl set_permissions -p / root ".*" ".*" ".*"
//查看用户命令
rabbitmqctl list_users

在添加完用户后还需要对RabbitMQ服务进行重启。

配置用户可被远程访问

rabbitmq默认只能通过localhost:15672登录,不能使用ip登录,可以通过修改配置文件来实现远程访问.
先停止rabbitmq
在rabbitmq.config.example中添加以下配置

 ...
[
 {rabbit,
  [%%
   %% Network Connectivity
   %% ====================
   %%
   %% By default, RabbitMQ will listen on all interfaces, using
   %% the standard (reserved) AMQP port.
   %%
   {tcp_listeners, [5672]},
   {loopback_users, ["root"]},
   ...
  ]}
].

启动rabbitmq即可

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
要在Java连接RabbitMQ,您可以使用RabbitMQ的官方Java客户端库,即RabbitMQ Java Client。以下是一个简单的示例代码,演示如何连接RabbitMQ服务器: 首先,确保您已经将RabbitMQJava客户端库添加到您的项目中。您可以在 Maven 或 Gradle 中添加以下依赖项: Maven 依赖项: ```xml <dependency> <groupId>com.rabbitmq</groupId> <artifactId>amqp-client</artifactId> <version>5.9.0</version> </dependency> ``` Gradle 依赖项: ```groovy implementation &#39;com.rabbitmq:amqp-client:5.9.0&#39; ``` 然后,您可以使用以下代码连接RabbitMQ: ```java import com.rabbitmq.client.Connection; import com.rabbitmq.client.ConnectionFactory; public class RabbitMQConnection { public static void main(String[] args) { // 创建连接工厂 ConnectionFactory factory = new ConnectionFactory(); // 配置 RabbitMQ 服务器连接信息 factory.setHost("localhost"); // RabbitMQ 服务器地址 factory.setPort(5672); // RabbitMQ 服务器端口号 factory.setUsername("guest"); // RabbitMQ 用户名 factory.setPassword("guest"); // RabbitMQ 密码 try { // 创建连接 Connection connection = factory.newConnection(); // 连接成功后可进行其他操作,例如创建/消费队列等 System.out.println("成功连接RabbitMQ 服务器"); // 关闭连接 connection.close(); } catch (Exception e) { e.printStackTrace(); } } } ``` 请确保将上述代码中的 RabbitMQ 服务器地址、端口号、用户名和密码更改为您实际使用的值。这段代码将尝试连接RabbitMQ 服务器并打印成功连接的消息。如果连接失败,将打印出异常信息。 这只是一个简单的示例,您可以根据您的实际需求进行更多的操作,例如创建队列、发送/接收消息等。有关更多详细信息,请参阅 RabbitMQ Java Client 的文档。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值