Under-Utils
stable 1.0.2 1.0.3-SNAPSHOT

Under-Utils 使用文档

文档站聚焦接入、配置、失败语义、资源边界和维护约束。当前收录 24 份仓库 Markdown,构建时从 README、docs 和模块 README 自动生成索引。

Under-Utils 是一组面向 Java 21 / Spring Boot 项目的工程模式工具包,用来沉淀业务系统里反复出现、实现细节多、容易写散的基础设施代码。

快速开始

当前稳定版本为 1.0.2,主分支处于 1.0.3-SNAPSHOT 开发周期。普通 Spring Boot 服务优先从轻量 starter 开始。

Spring 本地横切能力配置
under:
  utils:
    web:
      operation-context:
        enabled: true
        task-decorator-enabled: true
      rate-limit:
        enabled: true
        store: local
      repeat-submit:
        enabled: true
        store: local

项目边界

适合进入本项目的能力,应有清晰复用边界,并能封装足够多的重复复杂度。JDK、Spring、Hutool、Apache Commons、Guava 已成熟覆盖的小工具方法不作为新增方向。

模块文档

under-utils-spring-starter 请求上下文、限流、防重复提交、本地 store 和基础 SPI 自动装配。 under-utils-spring-starter/README.md under-utils-redis-starter 接入 Redis store、分布式锁、cache-aside、逻辑过期缓存和缓存观测。 under-utils-redis-starter/README.md under-utils-ai OpenAI-compatible AI 大模型基础调用封装,覆盖同步、流式和命名客户端。 under-utils-ai/README.md under-utils-ai-starter Spring Boot AI 自动装配入口,按配置创建默认或多个命名 AiClient。 under-utils-ai-starter/README.md under-utils-http HTTP 便捷调用与 OpenAPI 客户端治理,包括 token、签名、重试和错误解码。 under-utils-http/README.md under-utils-redis Redisson 分布式锁、限流/防重 Redis store、缓存模板和内置指标。 under-utils-redis/README.md under-utils-spring Spring Web 上下文传播、限流/防重抽象、返回结果、异常处理和 JSON 脱敏。 under-utils-spring/README.md under-utils-mybatis MyBatis-Plus 安全分页、排序白名单、审计填充和分页结果封装。 under-utils-mybatis/README.md under-utils-biz 可复用业务流程模板,当前覆盖 CSV 导入、异步导入、进度查询和错误导出。 under-utils-biz/README.md under-utils-core 低耦合基础能力和历史工具兼容维护,主线保留雪花 ID 与金额工具。 under-utils-core/README.md under-utils-starter 兼容聚合 starter,保留旧入口,继续覆盖 Spring 与 Redis 自动装配。 under-utils-starter/README.md under-utils-samples 可运行示例工程,用于验证 starter 与工程模式封装的真实使用体验。 under-utils-samples/README.md under-utils-test Testcontainers 集成测试模块,仅通过 integration-tests profile 启用。 under-utils-test/README.md

兼容性

public API 范围包括 Maven 坐标、public/protected Java API、注解属性、`under.utils.*` 配置 key、starter 自动装配 Bean、SPI 接口和已文档化的失败语义。

API Review

API Review 用于持续收敛命名、配置 key、异常语义和模块边界。API 文档中的 deprecated 状态需要和审计结论互链。

工程成熟度

成熟度清单覆盖生命周期结束、缓存指标、Bug 回归测试、CHANGELOG 可追溯性和 API 兼容性门禁。

发布指南

发布流程面向 Maven Central Portal,默认跳过上传以避免误发布。真正 release 前需要完成测试、release profile、签名和 Central Portal 校验。

文档源

以下页面直接由仓库 Markdown 渲染,保留代码块、表格和标题锚点,避免前台文案与工程文档分叉。

快速开始 环境要求、BOM 引入、轻量 starter 选择和本地开发命令。 README.md 兼容性策略 1.0.x、1.x.0、2.0.0 的版本语义、public API 范围和弃用流程。 docs/COMPATIBILITY.md API Review 持续收敛命名、配置 key、异常语义和模块边界的审计结论。 docs/API_REVIEW.md 工程成熟度 生命周期、指标、回归测试、CHANGELOG 和 API 兼容门禁。 docs/ENGINEERING_MATURITY.md 发布指南 Maven Central Portal、GPG/PGP 签名、release profile 和 CI 发布要求。 docs/RELEASE.md Crypto 重新建模备忘 under-utils-core 当前保留 AESUtils、MD5Utils 和 SHA256Utils,只作为历史兼容工具。它们不再作为安全治理主线扩展,也不再通过新增重载模拟完整加密框架。 docs/CRYPTO_REDESIGN.md 依赖重量审计 本文件记录 Under-Utils 的模块依赖重量、默认传递依赖和后续拆分判断。 docs/DEPENDENCY_REVIEW.md 后续功能孵化 本文件用于记录尚未进入实现的新功能想法。它的目标是先把“为什么做、做到什么边界、什么不做”说清楚,再决定是否进入代码实现。 docs/FUTURE_FEATURES.md JSON 模块迁移备忘 JsonUtils 已经作为 under-utils-core 的 public API 发布,并且当前会让 core 默认带入 Jackson。这个状态在 1.x 内继续保持,避免老用户升级后出现运行时缺类。 docs/JSON_MODULE_MIGRATION.md v1.0.1 发布说明 1.0.1 是 1.0.0 之后的兼容增强版本,重点补齐开源发布后的工程化能力、示例和文档。该版本不改变 Maven 坐标,不删除 public API,不调整 starter 的默认开关语义。 docs/releases/v1.0.1.md v1.0.2 发布说明 1.0.2 是 1.0.1 之后的兼容增强版本,重点是收敛运行时边界、拆轻 starter、补齐工程成熟度要求,并新增 AI 大模型基础调用封装。该版本不删除已发布 public API,不改变 under.utils.* 既有配置 key 的默认语义。 docs/releases/v1.0.2.md