深入分析 @ComponentScan 在 Spring 中的应用
@ComponentScan 是 Spring 框架中的关键注解,它帮助开发者自动扫描并注册组件类,简化了 Bean 的配置和管理。通过本篇文章,你将深入了解 @ComponentScan 的工作原理
2026-03-27
从Mybatis源码学会了什么
MyBatis源码展现了优秀的设计模式和架构思想,如运用动态代理实现Mapper接口,装饰器动态扩展功能等。架构上采用清晰分层设计,插件化扩展机制,多级缓存,面向接口编程。我们在进行日常开发时可借鉴。
2026-03-27
开发 Java MCP 就像写 Controller 一样简单,还支持 Java 8
通过 `Solon AI Skills` 的智能路由,还可以避免模型因工具过多而产生幻觉,同时注入本地业务指令。
2026-03-27
破案了!HashMap 根本没满 0.75 却偷偷扩容?源码里的这个“甩锅”逻辑把我看笑了
大家都背过“HashMap 负载因子 0.75,满了就扩容”。本文带你扒开 HashMap 源码,看看它底层那个鲜为人知的“不自信”扩容机制。
2026-03-27
Java 泛型
一、前言 泛型在编码过程中的好处: 提高 Api 设计的灵活性 运行时异常提前暴露到编译期 二、泛型分类 1. 泛型类 2. 泛型方法 3. 泛型接口 三、泛型通配符 1. 上界通配符 在 Java
2026-03-27
Netty 源码深度解析:为什么它是 Java 世界里面向对象设计的“巅峰之作”?
Netty 的设计告诉我们,面向对象从来不是为了装酷,也不是为了增加那一两层的调用开销。它存在的唯一目的,是为了使复杂性受控。
2026-03-27
Java IO/NIO 傻傻分不清?一篇文章理清区别与用法
你可以把 **IO** 理解为“水管”: - 你拿到一个 **流(Stream)**,然后不断 `read()` / `write()`。 - 使用成本低,写法直观,适合大量业务场景(文件、配置、小请
2026-03-27
阿里一面:ReentrantLock如何保证线程安全?
文章内容收录到个人网站,方便阅读:http://hardyfish.top/ ReentrantLock 的线程安全,本质由两件事托底:互斥与内存可见性。 互斥保证同一时刻只有一个线程进入临界区(cr
2026-03-27


