java教程技术文章
-
TreeSet 不是用 equals 直接判断重复,而是沿着 compareTo 或 Comparator.compare 的结果定位元素。本文用一个只比较年龄的场景解释 compare 返回 0 为什么会让第二个对象无法加入,并给出主键加唯一标识的稳定改法与迁移检查清单。190 收藏 -
JDK 26 使用 Java 24 引入的 Stream Gatherers,把窗口、扫描、映射和自定义状态组合进同一条流管道。本文按输入输出、andThen、生命周期、并行与落地边界说明怎样选择组合方式。190 收藏 -
Ja vaFX 类库是从 JDK 7u6 开始才被正式包含进来的,而目前较新且相对稳定的 Ja vaFX 体系,与 JDK 8 的特性结合得更紧密。也正因为如此,运行 Ja vaFX 应用时,更推荐在系统里安装 JDK 8 或更高版本;如果仍然使用较低版本的 JDK,往往还得额外导入 jfxrt.j189 收藏 -
Java Record 的参数校验应集中放在规范构造器中:用 compact constructor 处理清洗、非空、格式和范围约束,重载构造器统一委托,避免对象从旁路入口创建。189 收藏 -
Java 的 Pattern Matching switch 可以沿着 sealed 类型层级做穷尽匹配。本文用订单事件模型拆开直接子类型、叶子类型、default、null 和新增实现后的编译影响。189 收藏 -
Java HttpClient 的 connectTimeout 负责新连接建立,HttpRequest.timeout 负责请求响应等待。本文用 Java 代码和异常边界说明两者的作用域、连接复用影响与排查方法。189 收藏 -
介绍 Java CRC32C 如何对数组区间、流式读取和 ByteBuffer 分块持续计算校验值,重点说明实际长度、position、getValue 与 reset 的边界。189 收藏 -
Java 线程池会复用工作线程,ThreadLocal 中的用户信息不会在一次任务结束后自动消失。本文用 finally、remove 和任务装饰器建立可靠的清理边界,避免用户串号与对象滞留。188 收藏 -
Spring WebFlux 的 flatMap 并发只作用于单次订阅。通过单例非阻塞许可约束实例共享下游调用,结合响应体缓冲、连接等待与取消边界,说明背压能控制什么,以及容量不足时如何处理。187 收藏 -
文章 · java教程 | 2个月前 | 反序列化 · Java教程 · 安全编程 · java Java安全 ObjectInputFilter 反序列化过滤 Serialization Filter
Java ObjectInputFilter 可以在对象反序列化过程中检查类名、数组长度、对象图深度、引用数和输入字节数。本文用一个白名单场景写出最小过滤器,并用可验证的拒绝案例检查边界。186 收藏 -
讲清 Java Pattern 为什么会在重叠量词和失败分支下产生灾难性回溯,并用 possessive quantifier、atomic group 和输入边界给出可落地的改写与防护思路。185 收藏 -
解释 Java Map.computeIfAbsent 递归更新同一个键为何失败,区分 HashMap 与 ConcurrentHashMap 的异常边界,并用递归返回值和外部缓存改写回调内更新。184 收藏 -
Java G1 日志出现 humongous allocation 时,应先确认实际 Region 大小,再用半个 Region 判断阈值,并结合 Humongous regions、Old regions、并发标记和 Full GC 证据区分偶发大对象与持续空间压力。184 收藏 -
文章 · java教程 | 1个月前 | 配置管理 · Java · Spring Boot · 故障排查 · Java教程 · spring boot actuator @ConfigurationProperties 配置属性绑定 PropertySource
Spring Boot 配置属性绑定失败时,沿着失败字段、PropertySource 优先级、canonical key、类型转换和校验边界逐层排查,并用 configprops 与最小配置确认最终来源。184 收藏 -
Java 25 正式交付 Key Derivation Function API,可用 HKDF 从输入密钥材料派生指定长度的 AES 密钥。本文用 javax.crypto.KDF 和 HKDFParameterSpec 拆解 extract、expand、salt、info 的参数边界,并给出长度和结果验收方法。183 收藏