java教程技术文章
-
Java Cleaner 适合为资源释放提供 GC 兜底,但清理动作不能持有被注册对象本身。本文用静态状态类、Cleanable 和 AutoCloseable 组织一份可落地的写法,并说明显式 clean、重复清理和阻塞动作的边界。128 收藏 -
用 Java DateTimeFormatterBuilder.appendFraction 控制时间小数位,掌握 minWidth、maxWidth、decimalPoint 的组合、截断规则与严格解析边界。127 收藏 -
Java Map.computeIfAbsent 的映射函数返回 null 时不会记录键值映射。本文按触发条件、返回结果、异常边界和缓存策略拆开说明,帮助你区分未命中、空值与计算失败。117 收藏 -
使用 Java Time Chronology 处理非 ISO 日历时,把 ISO 日期留在存储和计算层,在界面层通过 DateTimeFormatter.withChronology 格式化,并正确区分 Locale、Era、y 与 u 的边界。117 收藏 -
文章 · java教程 | 6天前 | Java · 事务 · 代理 · spring · 排错 · java Spring事务 @Transactional TransactionTemplate 事务代理 自调用
Spring 默认 proxy 模式只拦截从代理进入的外部调用,同一个 Bean 内部的 this 自调用会绕过 @Transactional。本文用调用关系图和代码说明如何拆分服务、显式走代理、使用 TransactionTemplate,以及何时考虑 AspectJ。114 收藏 -
Java HttpClient 可以用 HttpRequest.BodyPublishers.ofFile(Path) 把本地文件作为请求体发送。本文说明文件请求体的构造关系、Content-Type 设置、异常处理和与响应文件下载的区别。103 收藏 -
Java ClassValue 适合把按 Class 计算出的派生数据与类型关联起来。本文用一个类型元数据示例说明 get、computeValue、remove 的关系,解释并发计算、异常和何时不该使用 ClassValue。100 收藏