设计模式实战:用 Java 优雅实现适配器模式解决接口不兼容 在日常的系统开发或重构中,我们经常会遇到这样的尴尬场景:系统需要引入一个新的第三方库,或者需要兼容一个老旧的遗留系统。但是,这些外部或老旧系统的代码往往与我们当前系统内部的标准接口不一致。甚至在很多历史遗留项目中,压根就没有定义接口规范,业务逻辑被死死地硬编码在具体的类中。 如果我们直接修改现有的核 2026-06-07 后端探秘 29 野猪凌梦
JDK 9+ 观察者模式最佳实践:告别废弃 API,拥抱 PropertyChangeSupport 在 Java 开发中,观察者模式(Observer Pattern)是我们处理对象状态变化与事件解耦的常用利器。很多老旧的教程中仍然在使用 java.util.Observer 和 java.util.Observable 来实现该模式,但如果你使用的是 JDK 9 或更高版本,你会发现这两个类已经 2026-06-06 后端探秘 14 野猪凌梦
深入理解单例模式:DCL 双重检查锁为什么必须加 volatile? 在 Java 开发中,单例模式是我们最常用的设计模式之一。为了实现延迟加载并保证线程安全,双重检查锁(Double-Checked Locking,简称 DCL)是一种非常经典的写法。 然而,很多人在手写 DCL 单例时,往往只记得加上 synchronized 同步锁,却忽略了极其关键的 vola 2026-06-05 后端探秘 20 野猪凌梦
告别繁琐配置:基于 Auth0 的超轻量级 Java JWT 工具类实现 在日常的 Java Web 开发中,JWT(JSON Web Token)已经成为了实现无状态认证的标配。提到 Java 的 JWT 库,很多人第一时间会想到 jjwt。不可否认 jjwt 功能强大,但对于一些简单的项目或是微服务节点,繁琐的 Builder 和复杂的配置往往显得有些“杀鸡用牛刀”。 2026-05-30 后端探秘 11 野猪凌梦
使用 AOP + 自定义注解优雅实现方法级权限校验 在日常的后端开发中,接口的权限校验是一个绕不开的话题。相比于在每个 Controller 方法里写一堆 if-else 来判断当前登录用户的角色,使用 自定义注解 + AOP(面向切面编程) 无疑是一种更加优雅、解耦且易于维护的解决方案。 今天这篇文章,我将结合实际项目代码,手把手带你实现一个 @A 2026-05-28 后端探秘 13 野猪凌梦
LeetCode 283. 移动零:双指针的巧妙运用 在处理数组的原地操作(In-place)问题时,“双指针”技巧是我们必须掌握的核心武器。今天我们通过一道非常经典的 LeetCode 简单题——移动零,来深入理解快慢指针的实战应用。 📝 题目描述 题目:给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。 2026-05-26 算法寻踪 8 野猪凌梦
LeetCode 438. 找到字符串中所有字母异位词:我的解题复盘与实践 在成功解决了“字母异位词分组”之后,我趁热打铁,继续挑战了相关的进阶题目——LeetCode 438. 找到字符串中所有字母异位词。 这篇博客主要记录我基于上一题核心思路的延伸,以及我的原始解法代码。 📝 题目描述 题目:给定两个字符串 s 和 p,找到 s 中所有 p 的 异位词 的子串,返回这 2026-05-26 算法寻踪 11 野猪凌梦
LeetCode 49. 字母异位词分组:巧用哈希表与排序算法 在日常的业务开发和算法刷题中,字符串处理是一个非常经典的命题。今天和大家分享一道 LeetCode 的中等难度高频题——字母异位词分组。这道题完美契合了“找规律 + 巧用数据结构”的解题思路。 📝 题目描述 题目:给定一个字符串数组 strs,请你将 字母异位词 组合在一起。可以按任意顺序返回结果 2026-05-26 算法寻踪 12 野猪凌梦
告别烦人的相对路径:Vite + VSCode 路径别名配置全指南 在日常的前端开发中 ,我们经常遇到这样的场景:当项目目录嵌套较深时,组件之间的相互引用就会变成一场灾难 。满屏的 ./../../components/Button 不仅让代码看起来杂乱无章,一旦后续调整了文件层级,还需要手动去修改无数个相对路径 。 为了解决这个问题,我们通常会配置 路径别名(Pa 2026-05-24 前端拾光 13 野猪凌梦
Windows 技巧:文件夹提示“已在另一程序中打开”无法删除?一招精准解决! 在日常使用 Windows 电脑时,你是否经常遇到这种抓狂的情况:想删除某个文件夹(比如软件的缓存目录、残留文件),系统却无情地弹出提示框: “操作无法完成,因为其中的文件夹或文件已在另一程序中打开,请关闭该文件夹或文件,然后重试。” 明明已经关闭了相关的软件,甚至退出了 IDE,为什么还是删不掉? 2026-05-22 生活碎片 10 野猪凌梦