-
Java UserPrincipalLookupService 查找用户组失败时,先确认取到的是当前文件系统的查找服务,再使用 lookupPrincipalByGroupName。本文区分用户组名不存在、用户与组方法混用、提供者不支持组查找以及 IOException/权限异常,并给出保留失败名称的排障写法。
-
通过 Java AclFileAttributeView 读取并保序展示文件 ACL,解释主体、类型、权限和标志,区分视图不支持、读取失败与空列表,并说明有效访问权限的判断边界。
-
Java PosixFileAttributeView 的 setPermissions 只更新 POSIX 权限集合,不会重写文件内容。本文说明如何获取视图、复制并修改权限集合、处理不支持 POSIX 文件系统和 I/O 异常,并比较它与 Files.setPosixFilePermissions 的选择。
-
Java Files.createTempFile 可以通过 FileAttribute 在创建临时文件时预设 POSIX 权限。本文用 PosixFilePermissions.asFileAttribute 组合 rw-------,说明默认目录与指定目录重载、非 POSIX 文件系统异常、目录边界和清理策略。
-
在 Java named module 中,ResourceBundle.Control 不是推荐的扩展入口。本文用 ResourceBundleProvider、ServiceLoader 和 module-info.java 搭出多语言资源包服务,说明服务命名、Locale 分发、模块声明与排障边界。
-
用 Java EnumSet.complementOf 从已选枚举值中取出同一枚举类型尚未选择的值,覆盖空集、全集、类型推断和并发访问边界。
-
Java HttpHeaders.allValues 返回同名响应头的全部值,缺失时得到空列表;本文对比 firstValue、处理不可修改列表,并给出多值头归档写法。
-
通过 FileTypeDetector、META-INF/services 和 Files.probeContentType,把自定义文件扩展名接入 Java 的服务发现机制,并正确处理 null 回退与类路径排查。
-
Java MethodHandle 组合参数过滤器时,关键不是记住一个 API,而是先看过滤器消费几个参数、返回值要插入哪里。本文对比 filterArguments、collectArguments 和 foldArguments 的类型契约与使用边界。
-
Java 的 java.text.ListFormat 能按 Locale、Type 和 Style 生成自然的多项文本。本文从 String.join 的局限切入,给出标准、选择和单位三种语义的用法,并说明空列表、空值和 parse 不保证往返的边界。
-
用 Java Foreign Function and Memory API 的 Arena 管理 MemorySegment 生命周期,按线程模型选择 confined、shared、automatic 或 global,并用 try-with-resources 确定释放时机。
-
介绍 Java HexFormat 如何把 byte[] 格式化为可读十六进制文本,配置大小写、分隔符、前缀和后缀,并用 parseHex 做严格往返解析。
-
Java StringTemplate 是 Java 21/22 的预览特性。本文区分 STR、RAW 和自定义处理器的职责,说明如何用参数绑定组合 SQL,以及为什么 JSON 应交给序列化库处理。
-
Java Gatherer 适合把 Stream 中连续到来的元素整理成固定或滚动窗口。本文从最小写法入手,解释窗口状态、末尾批次、不可修改结果和并行合并边界。
-
用 Java Future.state 判断任务尚未完成、正常完成、异常完成和取消状态,再安全读取 resultNow 与 exceptionNow。