随笔分类 -  SpringBoot

摘要:构建高可用 WebSocket 的稳定性基石 —— 心跳机制与性能权衡引言 初次接触 WebSocket 的时候,我对它的理解是持久连接。理论上,一次握手之后,客户端和服务端之间会建立起一条全双工的通信管道,可以持续不断的双向传递数据。 但实际使用时,我发现一个看似持久的 WebSocket 连接如果没有任何数据活动,往往会在一分钟甚至更短的时间内断开。我一开始以为是 阅读全文
posted @ 2025-07-14 15:18 knqiufan 阅读(362) 评论(0) 推荐(1)
摘要:Quartz Cron 表达式参考手册目录 基础语法 字段说明 特殊字符说明 常用时间表达式 业务场景案例 复杂表达式示例 注意事项 在线工具 基础语法 Quartz Cron表达式由6个字段组成(从左到右): 秒 分钟 小时 日期 月份 星期 * * * * * * 字段范围 字段 允许值 允许的特殊字符 秒 0-59 , - * / 阅读全文
posted @ 2025-06-27 18:59 knqiufan 阅读(492) 评论(0) 推荐(0)
摘要:详解 MapStruct 框架中的 @Named 注解与 @Mapping 注解中的 qualifiedByName 属性一、 背景 在 Java 应用开发中对象之间的转换(如 DTO 与 Entity 的互转)是一项频繁且琐碎的任务。MapStruct 框架极大地解放了开发者的生产力。它通过在编译期生成类型安全、高性能的映射代码,避免了手动编写大量样板代码的繁琐,也规避了其他反射式框架(如 Apache BeanUt 阅读全文
posted @ 2025-06-27 16:05 knqiufan 阅读(810) 评论(0) 推荐(0)
摘要:深入理解 Spring Boot 的 @AutoConfiguration 注解深入理解 Spring Boot 的 @AutoConfiguration 注解 Spring Boot 凭借其“约定优于配置”的理念,极大地简化了 Spring 应用的开发过程。其核心特性之一便是自动配置(Auto-configuration),它能够根据项目 classpath 中的依赖以及开发 阅读全文
posted @ 2025-06-03 01:13 knqiufan 阅读(1170) 评论(0) 推荐(1)
摘要:[Ngbatis源码学习] Ngbatis 源码阅读之 Jsoup 简单使用说明在 Ngbatis 中解析 xml 的工具是 Jsoup,因为之前没有接触过,在这里简要的介绍和编写一下。 查了一些资料,Jsoup 似乎用作爬虫和解析 HTML 的场景比较多, 但是 XML 是一样的,同样是将页面解析为一个 DOM 树,然后使用 Jsoup 提供的方法来查询。因为 Jsoup 的 阅读全文
posted @ 2024-06-13 00:03 knqiufan 阅读(67) 评论(0) 推荐(0)
摘要:Excutors 与 ThreadPoolExcutor 的关系与区别先说结论。 线程池的创建分为两种: Executors ThreadPoolExecutor Executors 是一个线程池的工具类,而 ThreadPoolExecutor 是 Executors 的具体实现。ThreadPoolExecutor 是 Executor 接口的一个实现,是线程池的 阅读全文
posted @ 2024-03-22 13:04 knqiufan 阅读(459) 评论(0) 推荐(0)
摘要:[Ngbatis源码学习] Ngbatis 源码阅读之 NgbatisContextInitializerNgbatis源码学习之 NgbatisContextInitializer NgbatisContextInitializer 方法主要作用是为了初始化一些配置信息。包括 NebulaPoolConfig 连接池初始化、NgbatisConfig Ngbatis的配置信息初始化、NebulaJdb 阅读全文
posted @ 2024-03-22 10:19 knqiufan 阅读(109) 评论(0) 推荐(0)
摘要:[Ngbatis源码学习] Ngbatis 源码阅读之资源加载器 DaoResourceLoaderNgbatis 源码阅读之资源加载器 DaoResourceLoader DaoResourceLoader 是 Ngbatis 的资源文件加载器,扩展自 MapperResourceLoader。本篇文章主要分析这两个类。 1. 相关类 MapperResourceLoader DaoResour 阅读全文
posted @ 2024-02-07 12:10 knqiufan 阅读(188) 评论(0) 推荐(2)
摘要:[Ngbatis源码学习][Spring] Spring 的资源管理 ResourceLoader在学习Ngbatis的源码时,看到了有关xml文件的加载,涉及到了资源的加载,对相关知识进行总结与整理。 1. 相关类 Resource AbstractResource ResourceLoader DefaultResourceLoader ResourcePatternResolver Pat 阅读全文
posted @ 2023-12-17 02:07 knqiufan 阅读(90) 评论(0) 推荐(0)
摘要:[Ngbatis源码学习]Ngbatis源码阅读之连接池的创建Ngbatis源码阅读之连接池的创建 1. NebulaPool的创建 NgbatisBeanFactoryPostProcessor 这个类实现了 BeanFactoryPostProcessor 后置处理器,Ngbatis 连接池的创建就在 postProcessBeanFactory 中实现。 阅读全文
posted @ 2023-12-06 23:27 knqiufan 阅读(229) 评论(0) 推荐(0)
摘要:[Maven]关于Maven的生命周期与命令关于Maven的生命周期与命令 工作的时候对Maven的install和package的使用产生了一些疑问,干脆将Maven的整个生命周期都复习总结一遍。 先看下在IDEA中Maven的生命周期节点: clean clean是清理命令,相当于执行了 mvn clean 命令。 清理当前工程编译后生成 阅读全文
posted @ 2023-12-01 16:10 knqiufan 阅读(105) 评论(0) 推荐(0)
摘要:[Ngbatis源码学习][SpringBoot] 由BeanFactoryPostProcessor想到由BeanFactoryPostProcessor想到 在看Ngbatis源码时看到了对BeanFactoryPostProcessor后置处理器的使用,对其的使用并不是很了解,在此做一些学习和总结。 1. 相关类 BeanFactoryPostProcessor BeanDefinitionReg 阅读全文
posted @ 2023-11-30 02:01 knqiufan 阅读(145) 评论(0) 推荐(0)
摘要:[Ngbatis源码学习][SpringBoot] ApplicationContextInitializer接口类的使用和原理解读ApplicationContextInitializer接口类的使用和原理解读 在看Ngbatis源码的过程中,看到了自定义的ApplicationContextInitializer实现类,对ApplicationContextInitializer接口不是特别的理解,所以趁此机会总结下对其的理 阅读全文
posted @ 2023-11-25 02:45 knqiufan 阅读(164) 评论(0) 推荐(0)