java教程技术文章
-
本文用一个用户首页聚合场景,梳理 Java CompletableFuture 的并发拉取、超时边界、异常兜底、结果合并和上线检查流程,让接口聚合在慢依赖下仍能稳定返回。365 收藏 -
本文用订单列表统计场景,梳理 Java Stream 的完整处理流程:字段口径、过滤条件、分组汇总、结果校验和常见误区,帮助把零散链式调用整理成可复用的后端数据处理方案。455 收藏 -
文章 · java教程 | 1星期前 | hashmap · 集合 · Java教程 · hashCode · equals · java HashMap map equals hashCode 可变key
本文从一个 HashMap 放入键值对后修改 key 属性,后续 get 返回 null 的现场出发,逐步复现问题,解释 hashCode、equals 和桶定位的关系,并给出不可变 key、稳定 ID、先删后放和单测兜底的修复方案。474 收藏 -
本文用完整工作流讲解 Java 接口幂等设计:请求标识、入口校验、Redis SETNX 防重、数据库唯一键兜底、超时查询和补偿状态。178 收藏 -
文章 · java教程 | 1星期前 | map · 并发安全 · 缓存设计 · Java教程 · java optional concurrenthashmap computeIfAbsent Map缓存
本文用一个用户资料缓存场景,完整拆解 Java Map computeIfAbsent 的使用边界、缺失加载、空值包装、并发 Map 选择和上线前检查,帮助你写出更简洁且行为可控的缓存初始化代码。236 收藏 -
Java 后端线上出现 NullPointerException 时,不要只在报错行补 if。本文从日志定位开始,复现空字段请求,逐步确认根因,并用入口校验、安全映射和复查用例降低同类问题。204 收藏 -
文章 · java教程 | 1星期前 | Java · 集合 · ArrayList · Iterator · removeIf · java iterator ArrayList ConcurrentModificationException removeIf
ArrayList 遍历时删除元素很容易抛 ConcurrentModificationException。本文按完整流程拆解增强 for、modCount、迭代器检查机制,并给出 Iterator.remove、removeIf、复制新列表三种安全方案。410 收藏 -
文章 · java教程 | 1星期前 | Java · 异步编程 · 后端开发 · CompletableFuture · 接口聚合 · java 结果合并 completablefuture 并行调用 超时兜底
页面接口经常需要同时查询用户、订单、优惠等多个服务。本文按完整工作流拆解 Java CompletableFuture 如何做并行调用、独立超时、异常兜底、统一 DTO 合并和最终检查。428 收藏 -
文章 · java教程 | 1星期前 | Java · 线程安全 · DateTimeFormatter · 日期处理 · 并发问题 · java 线程安全 日期格式化 threadlocal SimpleDateFormat DateTimeFormatter
线上偶发出现 2025-13-32 这类异常日期,很多时候不是数据源错了,而是多个线程共享了 SimpleDateFormat。本文从复现现象开始,逐步验证共享可变状态,并给出 DateTimeFormatter 和 ThreadLocal 两种修复方式。481 收藏 -
本文用订单查询接口讲清 Java HttpClient 的实战用法:设置连接超时和请求超时,发送 GET 请求,判断状态码,读取响应体,并给慢接口补上兜底处理。224 收藏 -
文章 · java教程 | 1星期前 | 时间处理 · instant · Java教程 · 时区转换 · DateTimeFormatter · java DateTimeFormatter java.time 时区处理 ZoneId INSTANT
本文用订单支付时间示例讲清 Java 时间与时区处理:存储用 Instant,展示用 ZoneId,格式化用 DateTimeFormatter,并避开 LocalDateTime 直接跨区传输的偏差。461 收藏 -
文章 · java教程 | 1星期前 | Java · Stream · 集合统计 · 分组聚合 · Collectors · java Stream Collectors groupingBy counting summarizingInt
本文用订单列表示例讲清 Java Stream 分组统计:按状态分组计数、按用户汇总金额、用 summarizingInt 一次拿到数量、总和、最大值和平均值。478 收藏 -
文章 · java教程 | 1星期前 | Java · 文件读取 · 异常处理 · 资源管理 · try-with-resources · java 异常处理 try-with-resources 资源关闭 AutoCloseable 文件流
本文用文件读取和目录扫描两个场景,演示 Java try-with-resources 如何自动关闭资源、控制关闭顺序,并避免 finally 分支遗漏带来的线上隐患。268 收藏 -
用订单金额计算场景讲清楚 Java 中 double 处理金额为什么容易出错,以及如何用 BigDecimal 的字符串构造、固定小数位和 RoundingMode 做出稳定的金额计算流程。324 收藏 -
文章 · java教程 | 1星期前 | 异步编程 · Java教程 · 超时治理 · CompletableFuture · java 异步任务 超时处理 completablefuture orTimeout completeOnTimeout
通过一个订单页异步聚合案例,演示 Java CompletableFuture 的 orTimeout、completeOnTimeout、异常兜底、耗时日志和常见坑,避免慢任务拖垮接口。421 收藏