java教程技术文章
-
从异常中的模块与包名入手,区分 exports、opens 和读取关系,给出 Java 反射 setAccessible 失败的诊断代码与最小修复方案。227 收藏 -
JTable 开启排序后,复选框状态容易因为视图行号和模型行号混用而错位。本文用一个可运行的 Swing 表格拆开索引转换、状态保存、刷新重建和验收方法。226 收藏 -
Java HttpClient 没有直接的 multipart 表单构造器,需要自己处理 boundary、CRLF、文件段和长度。本文给出可计算长度的拼接方案,并说明大文件如何改用可重复创建的流式请求体。225 收藏 -
Java 25 的 ScopedValue 适合在明确的动态作用域内单向传递不可变上下文;ThreadLocal 仍适合可变的线程本地状态,但在线程池任务结束时必须 remove。本文用最小代码和选择表说明两者在任务边界、嵌套绑定和子任务继承上的区别。225 收藏 -
文章 · java教程 | 2星期前 | Java · 人工智能 · 工具调用 · Spring AI · java 工具调用 会话隔离 Spring AI ToolSearchToolCallingAdvisor
Spring AI 2.0 的 ToolSearchToolCallingAdvisor 会按会话索引工具。本文从工具全量暴露的排查现场出发,说明 session ID、工具索引和 ChatClient 之间的边界,并给出 Java 配置示例与核对清单。221 收藏 -
MethodHandle 没有独立的类型配置项,类型由 MethodType 和查找方式决定。本文从句柄创建、接收者位置、invokeExact 严格匹配与 asType 适配四层排查常见 WrongMethodTypeException。214 收藏 -
用 Java 25 的 jdk.incubator.vector.FloatVector 改写批量 float 计算,讲清 preferred species、lane 宽度、尾部掩码、模块参数和标量回退的验收方法。211 收藏 -
Java Pattern 使用命名捕获组读取可选字段时,要区分分支未参与匹配产生的 null 与匹配空文本产生的空字符串,并在解析边界统一处理默认值和异常。209 收藏 -
文章 · java教程 | 2星期前 | 调试 · 二进制 · Arrays · Java教程 · 边界处理 · Java Arrays.mismatch 二进制比较 byte数组 范围比较 差异定位
Java Arrays.mismatch 会返回两个数组首个差异的相对索引,完全一致时返回 -1。本文从二进制快照校验出发,拆解整数组比较、范围偏移、前缀和长度边界,并给出可运行的验收代码。204 收藏 -
文章 · java教程 | 19小时前 | Java · 集合 · Stream · Collectors · toMap · groupingBy · map 重复键 Collectors.groupingBy Java Collectors.toMap Stream收集
Java Stream 收集数据时遇到重复键,不要直接改成覆盖写法。本文用 groupingBy 保留同键的多条对象,再用 toMap 合并函数处理只需要一个值的场景,并说明顺序、空值与并行流边界。203 收藏 -
文章 · java教程 | 4星期前 | 面向对象 · Java教程 · Java 25 · 语言特性 · 构造器 · Java 25 JEP 513 Flexible Constructor Bodies super 构造器 Java 构造器
Java 25 将 Flexible Constructor Bodies 变成永久特性,构造器可以在 super() 或 this() 前执行不依赖实例的校验和参数准备。本文用订单金额校验和继承构造器示例,讲清构造器链迁移时可写什么、不能引用什么,以及从 Java 24 预览代码升级时要检查的边界。200 收藏 -
文章 · java教程 | 3星期前 | Java · 线程池 · 异步编程 · CompletableFuture · 超时处理 · 线程池 Java CompletableFuture 异步超时 orTimeout completeOnTimeout
Java CompletableFuture 的 orTimeout 会让原任务以 TimeoutException 失败,completeOnTimeout 则把超时转换为备用结果。本文从订单查询的超时现场出发,拆开两种语义、异常回收与线程池验收边界。200 收藏 -
JDBC(Ja va Database Connectivity,Ja va数据库连接),它是一套用于执行SQL语句的Ja va API。应用程序可通过这套API连接到关系型数据库,并使用SQL语句来完成对数据库中数据的查询、新增、更新和删除等操作。 不同数据库在底层处理数据的机制并不一样。像 My199 收藏 -
文章 · java教程 | 3天前 | 正则表达式 · 字符串处理 · pattern · Java教程 · 代码实践 · java Java正则表达式 Pattern.DOTALL 匹配换行 Pattern.MULTILINE
解释 Java Pattern.DOTALL 为什么让点号匹配换行,区分 DOTALL、MULTILINE 与 UNIX_LINES 的作用,并用 Java 示例说明如何限定跨行匹配范围、避免贪婪量词吞掉后续内容。199 收藏 -
Java 21 模式 switch 遇到 null 时,按 JDK 编译版本、case null 规则、模式支配和输入矩阵逐层排查,避免把 Object 模式或 default 误当成空值兜底。198 收藏