[开源项目] Java 动态 SQL 构建框架 - Dynamic-SQL2
Dynamic-SQL2 是一个 纯 Java 、低侵入、跨数据库、可组合的动态 SQL 构建框架。 它提供 优雅的 DSL 风格 API ,让你可以像写代码一样构建 SQL ,同时保持 SQL 的表达力与可控性。
它不是完整的 ORM ,也不是 MyBatis 的替代品,而是定义为 Lightweight ORM / Micro ORM:
补足传统 ORM 在“动态 SQL + 多表查询 + 跨库兼容 + 类型检查”上的空白和拓展。
适用于 企业级业务系统、SaaS 平台、多租户架构、复杂动态查询场景。
核心特性:
- 动态 SQL 构建:链式 DSL ,告别字符串拼接
- 跨数据库兼容:内置 MySQL / Oracle / DB2 方言
- 高级 SQL 支持:子查询、窗口函数、CTE 、递归查询
- 现代化分页:支持 List / Map / 一对多结构分页
- Spring 友好:可与 Spring 、JDBC 、MyBatis 灵活组合
- 可扩展性强:自定义函数、条件生成器、值解析器
- 可测试性强:SQL 由 Java 构建,天然适合单元测试
- 专业日志模块:结构化、可自定义、可读性极高的 SQL 输出
- 提升团队协作和代码一致性:遵循统一的 SQL 构建方式,确保代码的一致性和可读性