框架参考

Ineed-Core 当前实现状态

区分已有实现、默认构建和仍需验证的可选能力。

浏览全部手册
本页目录
文档来源与 Markdown 原文

权威正文:ineed-core/docs/core/current-implementation-status.md。网站按工作区快照同步,原文中的历史日期和验证范围保留。

开始编码前核对同版本源码;跨仓文件引用可在源码定位目录查找。

下载 Markdown 原文 ↓

文档定位

本文档用于把 ineed-core 当前代码、聚合 pom.xml、测试入口和已知缺口放在同一处说明。

它回答的是“现在仓库里实际有什么、推荐怎么用、哪些能力还不能按稳定主路径理解”。如果要看完整模块声明,读 module-inventory.md;如果要看能力分层,读 module-capability-map.md

当前使用口径

四条关系型业务路径为 WebMVC + JPA/JDBC/MyBatis-Flex,以及 WebFlux + R2DBC,均有源码与框架测试入口。详细的源码状态、本轮执行证据和未验证范围统一维护在运行时矩阵

开发人员可先沿首个模块教程学习 JDBC 路径,再对照其他实现;教学顺序不决定正式业务交付范围。公共能力、新模块和未限定单栈的任务,仍按业务骨架评估并对齐目标栈。

服务缓存按阻塞/响应式运行时分别使用,不能混装。MongoDB 已进入聚合但不在本轮业务验证范围;Elasticsearch 聚合声明仍为注释;动态数据源 lookup key 仍返回 null;Druid starter 是依赖聚合。

代码结构速览

各模块的角色说明详见 module-inventory.md

测试现状

当前 ineed-core 下存在较多可执行测试,覆盖基础契约、数据能力、WebMvc/WebFlux support、JPA/JDBC/MyBatis-Flex/R2DBC adapter 默认行为和聚合链路。

常用验证入口:

cd java/ineed-core
mvn test

cd java/ineed-core
mvn -pl ineed-core-base test

cd java/ineed-core
mvn -pl ineed-core-tests/ineed-core-test-webmvc test

cd java/ineed-core
mvn -pl ineed-core-tests/ineed-core-test-webflux test

当前仓库没有 Maven wrapper。本轮 effective POM 的编译 release 为 17,定向测试使用 JDK 25、Maven 3.9.15;这不等于已经完成 JDK 17 运行兼容性验证。准备步骤见工具链说明

已知缺口

动态数据源

ineed-core-modules/ineed-core-datasource/src/main/java/com/ineed/core/datasource/DynamicDataSource.java 当前没有从上下文读取真实 lookup key。后续如果要支持租户级或运行时选择数据源,应先补齐:

  • lookup key 来源与生命周期
  • DynamicDataSourceContextHolder 的设置、清理和嵌套调用规则
  • 对应单元测试和至少一个启动模块验证

数据库元数据

ineed-rdb-metadata 提供连接、表、列等元数据读取。当前 RdbMetadataUtil 已通过 RdbMetadataException.readFailed 转换 SQLException;调用方应区分读取失败和真实空结果。目标数据库厂商的支持范围仍需对应验证,见接入指南

响应式链路

WebFlux + R2DBC 已有模块和测试入口,本轮已执行相关框架链路测试,实际覆盖与环境边界见验证记录。响应式实现中要避免装配期求值,例如不要用 Mono.just(getEntityClass()) 提前触发“不支持该操作”的同步异常。

Starter 体系

ineed-starter-druid 当前没有源码级自动配置类,也没有 spring.factoriesAutoConfiguration.imports。它只负责依赖聚合。后续如果要演进为真正 starter,应补齐:

  • @AutoConfiguration 入口
  • 条件装配规则
  • 默认配置与用户覆盖策略
  • starter 专用测试

服务缓存运行时边界

服务缓存已从 engine 中拆分为两套独立运行时:

  • ineed-core-service-cacheineed-core-engine 直接依赖,使用 Spring Cache、阻塞式 Redis/Redisson 依赖与阻塞式事务同步机制。
  • ineed-core-service-cache-reactiveineed-core-engine-reactive 直接依赖,使用 Reactive Redis 与响应式事务同步机制。
  • 两套模块都通过 AutoConfiguration.imports 注册各自配置,但响应式 engine 不依赖阻塞式 engine,响应式缓存也不依赖阻塞式缓存。

新增缓存能力时,应分别验证阻塞式和响应式实现,不要通过引入另一套运行时来复用实现。

文档维护要求

当代码结构变化时,按下面顺序更新文档:

  1. 先更新 module-inventory.md,确保模块声明与聚合 pom.xml 一致。
  2. 再更新本文档,说明能力状态、推荐口径和已知缺口是否变化。
  3. 如果影响业务开发主路径,再更新 module-capability-map.mdcrud-query-guide.mdr2dbc-code-guide.mdbusiness-module-layout-guide.md
  4. 如果影响项目开发规则,再更新 development-contract.mdcode-style-guide.md

最后核验:2026-09-19

仍有疑问?按反馈清单整理复现信息 →