java教程技术文章
-
文章 · java教程 | 4天前 | 性能优化 · 集合 · Stream · Java教程 · Collectors · java 内存 性能 Stream Collectors.groupingBy 分组统计
Java Stream 做分组统计时,先收集再多次遍历容易放大内存和 CPU 成本。本文用订单状态统计说明 groupingBy、groupingBy+下游收集器与并行流的边界,并给出可复查的基准与选择方法。260 收藏 -
用 Java 25 的 jdk.incubator.vector.FloatVector 改写批量 float 计算,讲清 preferred species、lane 宽度、尾部掩码、模块参数和标量回退的验收方法。211 收藏 -
Java 批量校验邮箱、手机号等字段时,反复编译 Pattern 和把 Matcher 跨线程复用,都会让接口延迟抬头。本文从 Pattern、Matcher 的职责边界出发,对比错误写法与复用写法,再用 JMH 风格基准和业务验收检查性能收益。102 收藏 -
文章 · java教程 | 4天前 | locale · 国际化 · Java教程 · 输入校验 · Java 25 · 国际化 locale Java Locale.Builder BCP 47 语言标签
用 Java Locale.Builder 校验用户提交的 BCP 47 语言标签,区分 setLanguageTag 与 forLanguageTag 的异常和截断行为,并给出回退语言、展示语言与测试验收方案。120 收藏 -
Java Semaphore 的公平参数不是性能开关,而是等待线程获取许可的排队契约。本文用批量调用限流场景说明 permits、公平与 tryAcquire 超时的边界,给出线程饥饿复现、可靠释放和验收清单。492 收藏 -
JTable 开启排序后,复选框状态容易因为视图行号和模型行号混用而错位。本文用一个可运行的 Swing 表格拆开索引转换、状态保存、刷新重建和验收方法。226 收藏 -
Java 22 通过 JEP 456 正式支持未命名变量与未命名模式,用下划线忽略不需要的值。本文从 switch、record 模式和异常参数三个场景说明作用域边界,并给出 javac 编译验收方法。237 收藏 -
文章 · java教程 | 4天前 | 线程池 · 并发编程 · 故障排查 · Java教程 · 任务取消 · java 线程池关闭 shutdownnow 线程池执行器 Thread.interrupt
Java 线程池调用 shutdownNow 后,等待队列会被移出,但正在执行的任务只是收到中断请求,并不等于立刻停止。本文从一次停机任务未收敛的现场出发,拆解中断传播、阻塞调用、任务清理和 awaitTermination 验收方法。252 收藏 -
需要把一组标签、路径或查询条件拼成带分隔符的文本时,StringJoiner 比手动判断首尾逗号更稳。本文从空集合、前后缀、嵌套拼接和 Stream 收集几个边界出发,给出可直接运行的 Java 示例与验收方法。290 收藏 -
Jackson 反序列化日期失败,往往不是 JSON 字段不存在,而是输入格式、时区和字段级格式化配置没有对齐。本文从报错现场出发,用 LocalDateTime、Instant 和 OffsetDateTime 三种类型拆开定位路径,并给出可验证的修复方案。256 收藏 -
文章 · java教程 | 4天前 | 依赖管理 · Java · JVM · 故障排查 · 类加载 · java 类加载器 ClassNotFoundException NoClassDefFoundError 依赖排查
代码在编译阶段明明能找到类,部署后却抛出 NoClassDefFoundError,通常不是类名写错,而是运行时类路径、传递依赖或初始化阶段出了差异。本文用一个可复现的启动故障,拆开编译期可见、运行期加载和初始化失败三个边界,给出定位与修复检查单。269 收藏 -
文章 · java教程 | 4天前 | 网络编程 · 并发 · Java · httpclient · 会话管理 · 并发请求 HTTPCookie Java HttpClient CookieHandler 会话隔离
Java HttpClient 的 CookieHandler 既能复用会话,也可能让不同账号的请求串 Cookie。本文从共享客户端、并发访问和任务结束三个边界,给出隔离、清理与验证方法。241 收藏 -
Files.readString 适合小型文本读取,却会把整个文件和解码后的字符串同时带进堆。本文用内存预算、newBufferedReader 分块读取和 lines 流关闭三个检查点,说明大文件读取该如何选型。335 收藏 -
Java 线程池出现任务堆积时,不要只盯着活动线程数。本文用队列长度、完成任务数和拒绝策略还原排查路径,并给出可复现的状态采样代码。284 收藏 -
并行流不是把线程数调大就会变快。本文用同一批数据对比串行流与并行流,解释 ForkJoinPool.commonPool 的参与方式、任务粒度、共享资源和压测边界,帮助你在真实服务里做出可复核的选择。378 收藏