RabbitMQ入门实战解析附带代码实现(1)

amqp-client

5.6.0

二、编写生产者

=======

编写消息生产者

com.itheima.rabbitmq.simple.Producer

package com.itheima.rabbitmq.simple;

import com.rabbitmq.client.Channel;

import com.rabbitmq.client.Connection;

import com.rabbitmq.client.ConnectionFactory;

public class Producer {

static final String QUEUE_NAME = “simple_queue”;

public static void main(String[] args) throws Exception {

//创建连接工厂 ConnectionFactory

connectionFactory = new ConnectionFactory();

//主机地址;默认为 localhost

connectionFactory.setHost(“localhost”);

//连接端口;默认为 5672

connectionFactory.setPort(5672);

//虚拟主机名称;默认为 /

connectionFactory.setVirtualHost(“/itcast”);

//连接用户名;默认为guest

connectionFactory.setUsername(“heima”);

//连接密码;默认为guest

connectionFactory.setPassword(“heima”);

//创建连接 Connection

connection = connectionFactory.newConnection();

// 创建频道 Channel

channel = connection.createChannel();

// 声明(创建)队列

/**

  • 参数1:队列名称

  • 参数2:是否定义持久化队列

  • 参数3:是否独占本次连接

  • 参数4:是否在不使用的时候自动删除队列

  • 参数5:队列其它参数

*/

channel.queueDeclare(QUEUE_NAME, true, false, false, null);

// 要发送的信息

String message = “你好;小兔子!”;

/**

  • 参数1:交换机名称,如果没有指定则使用默认Default Exchage

  • 参数2:路由key,简单模式可以传递队列名称

  • 参数3:消息其它属性

  • 参数4:消息内容

*/

channel.basicPublish(“”, QUEUE_NAME, null, message.getBytes());

System.out.println(“已发送消息:” + message);

// 关闭资源 channel.close();

connection.close();

}

}

在执行上述的消息发送之后;可以登录RabbitMQ的管理控制台,可以发现队列和其消息:

RabbitMQ入门实战解析附带代码实现

RabbitMQ入门实战解析附带代码实现

三、编写消费者

=======

抽取创建connection的工具类

com.itheima.rabbitmq.util.ConnectionUtil;

package com.itheima.rabbitmq.util;

import com.rabbitmq.client.Connection;

import com.rabbitmq.client.ConnectionFactory;

public class ConnectionUtil {

public static Connection getConnection() throws Exception {

//创建连接工厂 ConnectionFactory

connectionFactory = new ConnectionFactory();

//主机地址;默认为 localhost

connectionFactory.setHost(“localhost”);

//连接端口;默认为 5672

connectionFactory.setPort(5672);

//虚拟主机名称;默认为 /

connectionFactory.setVirtualHost(“/itcast”);

//连接用户名;默认为guest

connectionFactory.setUsername(“heima”);

//连接密码;默认为guest

connectionFactory.setPassword(“heima”);

//创建连接 return

connectionFactory.newConnection();

}

}

编写消息的消费者

com.itheima.rabbitmq.simple.Consumer

public class Consumer {

public static void main(String[] args) throws Exception {

Connection connection = ConnectionUtil.getConnection();

// 创建频道 Channel

channel = connection.createChannel();

// 声明(创建)队列

/**

  • 参数1:队列名称

最后

总而言之,面试官问来问去,问的那些Redis知识点也就这么多吧,复习的不够到位,知识点掌握不够熟练,所以面试才会卡壳。将这些Redis面试知识解析以及我整理的一些学习笔记分享出来给大家参考学习

还有更多学习笔记面试资料也分享如下:

都是“Redis惹的祸”,害我差点挂在美团三面,真是“虚惊一场”

);

// 声明(创建)队列

/**

  • 参数1:队列名称

最后

总而言之,面试官问来问去,问的那些Redis知识点也就这么多吧,复习的不够到位,知识点掌握不够熟练,所以面试才会卡壳。将这些Redis面试知识解析以及我整理的一些学习笔记分享出来给大家参考学习

还有更多学习笔记面试资料也分享如下:

[外链图片转存中…(img-RLFkNeqN-1714438787970)]

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值