首页
文章归档
登录
菜单
首页
文章归档
JavaDog程序狗
归档
2025 年 05 月
【Java】小老弟,别再被Java深拷贝浅拷贝绕晕啦
2025-05-18
Java基础
#Java
#深拷贝
#浅拷贝
本文以代码和图解形式剖析 Java 对象深拷贝与浅拷贝。浅拷贝复制基本类型属性值,引用类型仅复制引用,新原对象引用属性指向同一地址;深拷贝对引用类型也递归创建新对象,指向不同地址。
【Java】5分钟搞懂CompletableFuture与线程池的配置与使用
2025-05-18
Java基础
#Java
#线程
CompletableFuture结合线程池是Java异步编程的核心工具。通过supplyAsync发起任务,thenApply/thenAccept链式处理结果,exceptionally捕获异常,实现高效异步编排。线程池(如Fixed、Cached、自定义ThreadPoolExecutor)需合理配置核心线程数、最大线程数、任务队列及拒绝策略,避免资源浪费或任务阻塞。
【Spring】AOP通知加载顺序比前任更难搞?来看异常时执行逻辑全解析
2025-05-16
Java基础
#Spring
#Aop
#Java
本文解析Spring AOP通知执行流程,涵盖五种通知类型(前置、后置、返回、异常、环绕)及其正常与异常场景下的执行顺序。正常顺序为:环绕开始→前置→目标方法→环绕结束→返回→后置;异常时,流程变为:环绕开始→前置→目标方法→异常通知→后置,且环绕结束部分仅在proceed()后抛出异常时执行。后置通知始终执行,环绕通知的后半部分受异常抛出时机影响。附代码示例验证流程及异常处理逻辑。
【Java】女朋友都抱怨了,别再粗暴停止线程池啦!
2025-05-15
Java基础
#Java
#ThreadLocal
#线程
本文围绕Java线程池优雅停止展开。先形象解释线程池概念,强调优雅停止可避免数据丢失、保障系统稳定。介绍shutdown()等核心方法及特点,给出电商、数据分析等业务场景应用示例和代码示例。
【Java】ThreadLocal大揭秘:从原理到实战,轻松掌握线程安全
2025-05-14
Java基础
#Java
#ThreadLocal
本文介绍了Java中ThreadLocal的作用与核心特性,强调其通过为每个线程提供独立数据副本实现线程安全,避免共享变量冲突。核心特性包括线程隔离、自动回收和延迟初始化。与同步方法、锁机制相比,ThreadLocal性能更高且代码更简洁,适用于需线程独占数据的场景,如Web应用中存储用户信息。但需注意线程池中需手动调用remove()防止内存泄漏,以及通过InheritableThreadLocal解决父子线程间的数据传递问题。
2025 年 04 月
【JS】javascript事件循环机制:你以为的异步王者,其实是面试刺客
2025-04-14
js
#JS
#前端
#事件循环
本文深入解析JavaScript事件循环机制,强调其核心为调用栈、任务队列与事件循环的协同工作。文章对比微任务(如Promise)与宏任务(如setTimeout)的优先级,指出微任务总先于宏任务执行。
2025 年 03 月
【Java】BigDecimal引发事故大揭秘,这“雷区”你踩过没?
2025-03-14
Java基础
#Java
#BigDecimal
#后端
本文揭秘BigDecimal三大致命陷阱:用double构造导致精度丢失(如0.1变0.100000…),必须用字符串构造;除法不设精度会抛异常,需指定舍入模式;equals()同时比较值和精度,2.00≠2.0,需用compareTo()。牢记字符串构造、设精度、银行家舍入三原则,避免财务事故
【前端】90%程序员踩过的坑!CommonJS到ES6模块化避坑全攻略
2025-03-12
js
#CommonJs
#ES6
#JS
#前端
前端模块化中,CommonJS和ES6的导入导出机制很重要。本文介绍了二者概念、区别,前者用于Node.js,用require等;后者浏览器和Node.js都能用,用import等。还分享不同场景实践操作,助你选合适规范,让代码简洁高效。
【前端】前端 CSS 原子化,代码乐高随便搭
2025-03-11
css
本文介绍 CSS 原子化,它将样式拆成原子类,有复用性高、减少冲突等优势。以 Vue 3 项目为例,演示使用 Tailwind CSS 实现原子化的步骤,包括创建项目、安装依赖、配置框架、引入样式等。最后给出与作者交流方式及更多文章推荐。
2025 年 02 月
【java】easypoi导出excel单元格,填充动态下拉列
2025-02-24
Java基础
#Java
#easypoi
本文介绍了使用 EasyPOI 库在导出 Excel 文件时为特定列动态生成下拉列表的方法。通过 DataValidationHelper 工具,根据每个学生的兴趣爱好数据创建动态下拉列表。具体步骤包括初始化数据验证帮助器、创建下拉列表约束、定义应用区域以及将数据验证规则添加到工作表中。
上一页
1 / 10
下一页