Skip to content

Ktorm

v4.x
Kotlin

概述

Ktorm 是 Kotlin 原生的 ORM 框架,专为 Kotlin 开发者设计。它提供类型安全的 DSL 风格 API,让数据库操作像写 Kotlin 代码一样自然流畅。

适用后端框架
框架支持状态
Spring Boot (Kotlin) Spring Boot (Kotlin)✅ 推荐
Ktor✅ 完全支持

技术特性

特性说明
类型安全编译时检查 SQL 正确性
DSL 风格类似 SQL 的 Kotlin DSL
轻量级无反射,启动快
数据库支持MySQL, PostgreSQL, SQLite, Oracle, SQL Server
事务支持完整的事务管理

Kotlin ORM 选型对比

特性KtormMyBatis PlusJPA
Kotlin 原生✅ 专为 Kotlin 设计⚠️ Java 兼容⚠️ Java 兼容
类型安全✅ 编译时检查❌ 运行时⚠️ 部分
DSL 风格✅ 优雅简洁❌ 方法链❌ JPQL
学习曲线
性能✅ 无反射✅ 良好⚠️ 一般
社区规模大(中国)
选型建议
  • Kotlin 项目首选:Ktorm,体验最佳
  • 需要大量中文资料:MyBatis Plus
  • 已有 JPA 经验:Spring Data JPA

定义表结构

Tables.kt

定义实体类

Entities.kt

数据库连接

Database.kt

CRUD 操作

查询

查询示例

插入

插入示例

更新

更新示例

删除

删除示例

关联查询

关联查询

事务处理

事务

Spring Boot 集成

DatabaseConfig.kt
UserRepository.kt

最佳实践

开发建议
  1. 使用 sequenceOf:比直接 from().select() 更方便
  2. 实体接口:定义为 interface 而非 data class
  3. 懒加载关联:关联属性默认懒加载,注意 N+1 问题
  4. 事务边界:在 Service 层使用 useTransaction
  5. 日志开启:开发时开启 SQL 日志便于调试

相关资源

Released under the MIT License.