先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7
深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年最新Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上Java开发知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
如果你需要这些资料,可以添加V获取:vip1024b (备注Java)
正文
8.java yml文件中spring:下添加rabbitmq配置
rabbitmq:
host: 19.100.100.100 # 服务器的主机名或IP地址
port: 5672 # RabbitMQ服务器的端口号,默认是5672
username: guest # 也就是图二的账号密码
password: guest # 也就是图二的账号密码
listener:
simple:
retry:
enabled: true # 开启消费者进行重试
max-attempts: 5 # 最大重试次数
initial-interval: 3000 # 重试时间间隔
9.java代码DEMO
相关依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-amqp</artifactId>
</dependency>
**队列、交换机、key枚举**
/**
* queue、exchange、routingKey名称统一定义枚举
*/
public class RabbitConst {
// 请求队列
public static final String TEST_QUEUE = "test.queue";
// 请求交换机
public static final String TEST_EXCHANGE = "test.exchange";
// 请求key
public static final String TEST_KEY = "test.key";
// 请求队列
public static final String TEST_DELAY_QUEUE = "test.delay.queue";
// 请求交换机
public static final String TEST_DELAY_EXCHANGE = "test.delay.exchange";
// 请求key
public static final String TEST_DELAY_KEY = "test.delay.key";
}
生产者
/**
* 生产者
*/
@Component
@Slf4j
public class TestRabbitProducer {
@Autowired
private RabbitTemplate rabbitTemplate;
public void sender(String content){
JSONObject jsonObject = new JSONObject();
jsonObject.put("content", content);
rabbitTemplate.convertAndSend(RabbitConst.TEST_EXCHANGE, RabbitConst.TEST_KEY, JSONObject.toJSONString(jsonObject));
}
//延时队列
public void senderDelay(String content,Integer delayTime){
JSONObject jsonObject = new JSONObject();
jsonObject.put("content", content);
rabbitTemplate.convertAndSend(RabbitConst.TEST_DELAY_EXCHANGE, RabbitConst.TEST_DELAY_KEY, JSONObject.toJSONString(jsonObject),message -> {
message.getMessageProperties().setDelay(delayTime);
log.info("发送延时消息时间:" + new Date() + ",延时: " + delayTime + "毫秒");
return message;
});
}
}
消费者
/**
* 消费者
*/
@Component
@EnableRabbit
@Slf4j
public class TestRabbitConsumer {
@Autowired
private IAbutmentApiService abutmentApiService;
@RabbitListener(queues = RabbitConst.TEST_QUEUE)
@RabbitHandler
public void receive(String msg) {
log.info("MQ消费:msg: " + msg);
System.out.println(msg);
}
@RabbitListener(queues = RabbitConst.TEST_DELAY_QUEUE)
@RabbitHandler
public void receiveDelay(String msg) {
log.info("MQ消费延时队列:msg: " + msg);
### 最后
**面试前一定少不了刷题,为了方便大家复习,我分享一波个人整理的面试大全宝典**
* Java核心知识整理
![2020年五面蚂蚁、三面拼多多、字节跳动最终拿offer入职拼多多](https://img-blog.csdnimg.cn/img_convert/d027707794555fecd092129ecc0374bf.webp?x-oss-process=image/format,png)
Java核心知识
* Spring全家桶(实战系列)
![2020年五面蚂蚁、三面拼多多、字节跳动最终拿offer入职拼多多](https://img-blog.csdnimg.cn/img_convert/d8acfdc671a6478327614d16b844e063.webp?x-oss-process=image/format,png)
* 其他电子书资料
![2020年五面蚂蚁、三面拼多多、字节跳动最终拿offer入职拼多多](https://img-blog.csdnimg.cn/img_convert/5d523680bd55a4aba17909434e3728a2.webp?x-oss-process=image/format,png)
**Step3:刷题**
既然是要面试,那么就少不了刷题,实际上春节回家后,哪儿也去不了,我自己是刷了不少面试题的,所以在面试过程中才能够做到心中有数,基本上会清楚面试过程中会问到哪些知识点,高频题又有哪些,所以刷题是面试前期准备过程中非常重要的一点。
**以下是我私藏的面试题库:**
![2020年五面蚂蚁、三面拼多多、字节跳动最终拿offer入职拼多多](https://img-blog.csdnimg.cn/img_convert/56e110f2ec1dccfa85ae5f347de0a3e0.webp?x-oss-process=image/format,png)
**网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**
**需要这份系统化的资料的朋友,可以添加V获取:vip1024b (备注Java)**
![img](https://img-blog.csdnimg.cn/img_convert/fb34b0c7ffb417d00a036caf7f0b262c.jpeg)
**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**
系统化的资料的朋友,可以添加V获取:vip1024b (备注Java)**
[外链图片转存中...(img-EY28s6yA-1713410491436)]
**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**