- 博客(77)
- 资源 (1)
- 收藏
- 关注
原创 Java 面试必问:JVM 垃圾回收(GC)职场生存全攻略
本文以“求职生存”类比 JVM 内存模型,系统梳理垃圾回收(GC)核心知识:从基本概念入手,对比引用计数与可达性分析,重点解析循环引用问题;进一步说明 Stop-The-World 对系统性能的影响;最后总结标记-清除、复制、整理及分代收集算法的原理与适用场景。内容兼顾原理与面试实战,帮助读者高效构建 GC 知识体系,应对高频面试问题。
2026-03-25 16:29:55
380
2
原创 Java 面试必问:JVM 运行时数据区域详解(附内存结构图)
JVM 运行时数据区域是 Java 面试中的高频知识点,但很多人只停留在概念层面的记忆。本文从 JVM 内存布局出发,系统梳理程序计数器、Java 虚拟机栈、本地方法栈、堆以及方法区五大运行时数据区域的作用与线程共享关系,并结合示例代码与结构图,帮助读者理解 Java 程序执行时的内存分工机制。同时也介绍了常见的内存问题与面试考点,帮助读者建立更清晰的 JVM 内存结构认知,为后续学习垃圾回收机制和类加载机制打下基础。
2026-03-08 14:00:17
1012
17
原创 ThreadLocal 原理与使用详解(三):从 set 到 remove 的源码全流程拆解
本文作为 ThreadLocal 系列的第三篇,深入源码层面,系统解析 ThreadLocal 的核心方法:set()、get()、remove() 与 initialValue() 的执行流程。从 Thread 类中的 ThreadLocalMap 结构出发,梳理线程如何绑定数据、如何查找数据,以及初始值的创建时机。通过源码拆解,帮助读者真正理解 ThreadLocal 数据存储路径与生命周期边界,构建完整的底层认知框架。
2026-03-03 00:22:30
793
原创 ThreadLocal 原理与使用详解(二):ThreadLocalMap 结构与弱引用设计解析
本篇深入解析 ThreadLocal 的底层实现机制,重点剖析 ThreadLocalMap 的结构设计与 set 方法执行流程,理解其开放地址法与线性探测策略。同时详细讲解 Entry 为何采用弱引用作为 Key,以及这种设计如何避免 ThreadLocal 对象无法回收所带来的内存泄漏问题。结合 GC 机制与线程生命周期,进一步说明 static final 修饰 ThreadLocal 的利弊及正确使用方式,帮助读者真正掌握 ThreadLocal 的实现原理与使用边界。
2026-03-03 00:11:38
789
1
原创 ThreadLocal 原理与使用详解(一):线程隔离与上下文传递
在多线程编程中,线程安全和跨层级数据传递始终是两个绕不开的问题。ThreadLocal 并不是用来控制并发,而是通过“线程隔离”机制,为每个线程维护独立副本,从而避免共享变量带来的竞争风险。本文从基本使用入手,结合线程隔离与跨函数数据传递两个典型场景,通过完整示例代码讲清 ThreadLocal 的核心原理与应用边界,并重点说明在线程池环境下必须手动 remove() 的原因。帮助读者真正理解 ThreadLocal 的设计思想,而不仅仅是会用 API。
2026-03-01 20:21:30
767
10
原创 Java 线程池线程数怎么定?从 IO / CPU / 混合型任务谈起
在 Java 后端开发中,线程池几乎是必不可少的基础组件,但线程数该如何配置却常常让人困惑。不同任务对 CPU 的使用方式差异很大,直接决定了线程池的合理线程数。本文从 IO 密集型、CPU 密集型以及混合型任务三种常见场景出发,分析线程池线程数配置的基本思路,并给出常见的估算方法,帮助开发者在实际项目中做出更合理的线程池配置选择。
2026-02-04 00:55:52
1352
29
原创 Java 高并发核心编程 ----- 线程池原理与实践(上)
本文为读者阅读《Java 高并发核心编程 卷2》(作者:尼恩)后摘抄部分段落以及整合个人理解后重写书写,重新编写了更容易理解的实例代码,对于难理解的内容我会新增小故事帮助理解,将部分重点内容使用荧光色加粗加重,对重点内容更加直观,有喜欢此内容的小伙伴欢迎阅读尼恩老师原著,也请小伙伴给博主三连一下,本系列会持续更新。
2026-02-01 23:45:07
817
6
原创 Java 高并发核心编程 ----- 初识多线程(下)
本文为读者阅读《Java 高并发核心编程 卷2》(作者:尼恩)后摘抄部分段落以及整合个人理解后重写书写,重新编写了更容易理解的实例代码,对于难理解的内容我会新增小故事帮助理解,将部分重点内容使用荧光色加粗加重,对重点内容更加直观,有喜欢此内容的小伙伴欢迎阅读尼恩老师原著,也请小伙伴给博主三连一下,本系列会持续更新。
2026-01-24 17:32:40
805
4
原创 Java 高并发核心编程 ----- 初识多线程(上)
本文为读者阅读《Java 高并发核心编程 卷2》(作者:尼恩)后摘抄部分段落以及整合个人理解后重写书写,重新编写了更容易理解的实例代码,对于难理解的内容我会新增小故事帮助理解,将部分重点内容使用荧光色加粗加重,对重点内容更加直观,有喜欢此内容的小伙伴欢迎阅读尼恩老师原著,也请小伙伴给博主三连一下,本系列会持续更新。
2026-01-18 22:46:52
674
原创 在 IntelliJ IDEA 中高效使用 Git 的实用指南
Rebase与Merge的区别假设当前我们有master和feature分支,当你在专用分支上开发新 feature 时,然后另一个团队成员在 master 分支提交了新的 commits,这种属于正常的Git工作场景。如下图:现在,假设在 master 分支上的新提交与你正在开发的 feature 相关,需要master分支将新提交的记录合并到你的 feature 分支中。git merge 合并master到feature2.git rebase 合并master到feature。
2025-12-14 17:36:54
1418
2
原创 SpringBoot 统一功能处理全解析:拦截器、数据返回与异常处理
从session中获取用户信息,如果session中不存在,则返回false,并设置http状态码为401,否则返回true。
2025-12-07 12:49:41
896
原创 Java 开发者必备:Linux 常用命令与 Web 项目部署指南
本文介绍了Linux系统常用的基础命令和Java环境部署方法。主要内容包括:1)文件目录操作命令如ls、cd、mkdir等;2)文本处理命令cat、grep、vim等;3)进程和网络管理命令ps、netstat;4)文件传输工具scp的使用;5)通过apt工具安装JDK等软件包。文章详细说明了各命令的语法、功能及常用选项,并配有示例,是Linux入门和Java环境搭建的实用指南。
2025-11-17 19:58:00
633
1
原创 RocketMQ核心技术精讲-----初识RocketMQ与快速上手
RocketMQ核心技术精讲-----初识RocketMQ与快速上手
2025-10-24 18:12:38
1177
33
原创 从入门到精通【Redis】Redis 典型应⽤ --- 缓存 (cache)
从入门到精通【Redis】Redis 典型应⽤ --- 缓存 (cache)
2025-10-13 21:28:26
871
1
原创 【从入门到精通Spring Cloud】统一服务入口Spring Cloud Gateway
【从入门到精通Spring Cloud】统一服务入口Spring Cloud Gateway
2025-09-21 11:51:32
1432
原创 【从入门到精通Spring Cloud】声明式服务调用组件OpenFeign
【从入门到精通Spring Cloud】声明式服务调用组件OpenFeign
2025-09-18 22:52:44
813
原创 【从入门到精通Spring Cloud】服务注册中心Nacos
order-service 在上海机房,product-service 在北京和上海机房都有实例,那我们希望可以优先访问上海机房,如果上海机房没有实例,或者实例不可⽤,再访问北京机房的实例。: Nacos会记录每个服务实例的IP和端⼝号,当发现IP和端⼝都没有发⽣变化时,Nacos不允许⼀个服务实例类型发⽣变化,⽐如从临时实例,变为⾮临时实例,或者从⾮临时实例,变成临时实例。Nacos 中的健康检查机制不能主动设置,健康检查机制是和 Nacos 的服务实例类型强相关的。(点击2.5.1.zip即可下载)
2025-09-16 01:04:16
1040
3
原创 【从入门到精通Spring Cloud】负载均衡Spring Cloud Load Balancer
负载均衡(Load Balancing)是一种分布式系统技术,核心目标是将大量的并发请求或数据流量均匀分配到多个服务器、节点或资源上,以避免单一设备过载,同时最大化系统的整体性能、可靠性和资源利用率。(简单来说,负载均衡就像 “交通调度员”:当一条道路(单一服务器)无法承载过多车辆(用户请求)时,调度员会引导车辆分流到其他畅通的道路(多台服务器),从而避免拥堵、减少事故(服务崩溃),并让所有道路的运力都得到充分利用。为什么需要负载均衡呢?
2025-09-16 01:03:52
1304
3
原创 【从入门到精通Spring Cloud】服务注册中心Eureka
随着微服务的流⾏与流量的激增,机器规模逐渐变⼤,并且机器会有频繁的上下线⾏为,这种时候需要运维⼿动地去维护这个配置信息是⼀个很⿇烦的操作。所以开发者们开始希望有这么⼀个东西,它能维护⼀个服务列表,哪个机器上线了,哪个机器宕机了,这些信息都会⾃动更新到服务列表上,客⼾端拿到这个列表,直接进⾏服务调⽤即可,这个就是注册中⼼。注册中⼼主要有三种⻆⾊ :服务提供者(Server):⼀次业务中,被其它微服务调⽤的服务,也就是提供接⼝给其它微服务。服务消费者(Client)
2025-09-16 01:03:36
1295
2
原创 【从入门到精通Spring Cloud】初识微服务
随着这个饭店的⽣意越来越好,这个厨师忙不过来了,饭店⼜请了⼀个厨师,新厨师和⽼厨师做⼀样的事情,也是洗菜,切菜,炒菜。简单来说,微服务就是很⼩的服务,⼩到⼀个服务只对应⼀个单⼀的功能,只做⼀件事,这个服务可以单独部署运⾏,微服务之间可以采⽤REST和RPC协议进⾏通信。以⼤家都很熟悉的电商系统为例,电商系统包括 : ⽤⼾管理,商品管理,订单管理,⽀付管理,库存管理,物流管理等等,项⽬早期我们会把这些模块都写在⼀个web项⽬中,然后统⼀部署到⼀个Web服务器中。Location:辽宁。
2025-09-16 01:03:09
1074
2
原创 从入门到精通【Redis】如何在Java中使用Redis以及将Redis集成到Spring Boot
本篇文章给大家介绍redis在Java中的简单实用,可以快速上手。
2025-09-08 14:24:18
1177
9
原创 从入门到精通【Redis】安装Redis以及基本全局命令
本文介绍了Redis的安装以及一些常见的全局命令,还介绍了Redis的淘汰策略以及单线程模型
2025-09-03 13:51:57
1015
5
JAVA编程基础练习题集-涵盖分支、循环、数组、类与对象实践示例
2025-03-03
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅