- 博客(10)
- 收藏
- 关注
原创 RocketMQ消息重试机制解析!
由于网络抖动、服务宕机等一些不确定的因素,RocketMQ在发送消息的时候很有可能出现消息发送或者消费失败的问题。所以RocketMQProducer端重试和Consumer端重试。
2024-09-25 15:11:29
1392
原创 和Java|让 JUnit4 测试类自动注入 logger 被测 Service
本文介绍如何通过自定义 IDEA 的 JUnit4 Test Class 模板,实现生成测试类时自动注入 logger 和被测 Service。
2024-09-25 15:10:44
503
原创 Java-基础-05-JVM-3-运行时数据区
1 运行时数据区运行时数据区的定义:Java虚拟机在执行Java程序的过程中会把它所管理的内存划分为若干个不同的数据区域 Java引以为豪的就是它的自动内存管理机制。相比于 C++的手动内存管理、复杂难以理解的指针等,Java 程序写起来就方便的多。 所以要深入理解JVM必须理解内存虚拟化的概念。 在JVM中,JVM内存主要分为堆、程序计数器、方法区、虚拟机栈和本地方法栈等。 同时按照与线程的关系也可以这么划分区域: 线程私有区域:一个线程拥有单独的一份内存区域。 线程共享区域:被所有线程共享,且只有一
2024-09-25 15:10:10
1233
原创 spring-ioc-XML方式管理Bean前言
Bean(汉译咖啡豆). 又称JAVA Bean.其实就是JAVA程序中的一个个对象,所以Bean的管理其实就是spring对于JAVA程序中的对象的管理。本节主要讲述XML方式管理Bean。
2024-09-24 14:58:47
860
原创 Java|在 IDEA 里自动生成 MyBatis 模板代码
近几年版本的 IDEA 里已经自带了 Database Tools and SQL 插件,可以连接数据库进行常用的操作,并且,它还自带了数据库表对应 POJO 类的代码生成器:在 Database 面板里配置好数据源以后,右键表名,依次选择 Scripted Extensions、Generate POJOs.groovy,选择生成路径后,即可生成对应的 Entity 类。既然能够生成 Entity,那么我们可以基于它进行修改,让它一次性生成我们需要的 Entity、Mapper 和 Service。
2024-09-24 14:57:49
1193
原创 深入解析 @Transactional 作用于私有方法时事务失效的原因
是Spring框架中用于管理事务的注解。其可以用于标记普通方法,以使用Spring的声明式事务管理功能。从而将事务的管理交于Spring处理,以自动地在方法执行前后自动处理事务的开启、提交和回滚等操作,而无需显式地编写事务管理代码。虽然的注解的引入极大的简化了我们对于事务的控制,但如果错误的使用或者对的机制理解不透彻,反而会适得其反。例如,如下的这段代码:java代码解读复制代码。
2024-09-24 14:57:07
1026
原创 Spring Boot集成LangChain来实现Rag应用
检索增强生成(RAG)是指对大型语言模型输出进行优化,使其能够在生成响应之前引用训练数据来源之外的权威知识库。大型语言模型(LLM)用海量数据进行训练,使用数十亿个参数为回答问题、翻译语言和完成句子等任务生成原始输出。在 LLM 本就强大的功能基础上,RAG 将其扩展为能访问特定领域或组织的内部知识库,所有这些都无需重新训练模型。这是一种经济高效地改进 LLM 输出的方法,让它在各种情境下都能保持相关性、准确性和实用性。LangChain 是一个用于开发由语言模型驱动的应用程序的框架。
2024-09-23 14:49:29
1298
原创 阿里面试让聊一聊Redis 的内存淘汰(驱逐)策略
Redis 的内存淘汰策略是指当Redis的内存使用量达到设定的上限时,决定哪些数据应该被移除以便为新数据腾出空间的规则。Redis 提供了多种内存淘汰策略,可以通过配置文件中的指令来设置。:这是默认策略,当内存使用达到限制时,Redis 会拒绝新的写入操作,并返回错误,但不会淘汰任何数据。:在所有键中,基于最近最少使用(LRU)算法淘汰数据。Redis 会维护一个近似的 LRU 列表,并不保证完全精确,但是对大多数使用场景来说是足够的。:在所有键中,基于最少频率使用(LFU)算法淘汰数据。
2024-09-23 14:48:47
742
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅