🚀

Komapper がいい感じだった話

2023/12/13に公開

Kotlin × Spring Boot の ORM どうしようかな~と思っていたけど、 Komapper が良さそうだったので紹介します。

Komapper

使い方とかは公式ドキュメントを参照。
https://www.komapper.org/ja/

Kotlin で完結する

QueryDsl.from(Meta.users).where { Meta.users.id eq userId }
QueryDsl.insert(Meta.users).values {
    Meta.users.name eq "てすとたろう"
}

とてもいい。構文が SQL からかけ離れているわけでもいないのが更に良い。

DTO 自動生成が出来るし、しなくても良い

自動生成自体には賛否あると思うが、自力でのマッピングもできるので、どちらでも良いと言うのがものすごく良い。

いざとなったら生 SQL も書けるのも良い

まあ大体のやつが書けると思うが、テストの初期値とかで込み入った SQL 発行したいときが偶にあるので助かる。

Kotlin Coroutines 対応している

Flux とかでもまあイケるが、 Coroutines のほうが嬉しい。

Doma の書き方も出来る

いわゆる 2-Way-SQL というらしい

まとめ

最初は jooq か Doma なぁと思っていたけど、 komapper が良かった。

株式会社ガラパゴス(有志)

Discussion