2020年12月9日(水) 「集まれKotlin好き!Kolint愛好会 vol.26 @オンライン」の談義資料です。
MyBatis Dynamic SQLのKotlinサポートを使う2020年12月9日 Kotlin愛好会 vol.26竹端 尚人
View Slide
自己紹介
概要竹端 尚人Twitter: @n_takehata● サーバーサイドKotlin● (少し前まで)スマートフォンゲーム開発● 今月からフリーランス
登壇、執筆● CEDEC 2018登壇● CEDEC 2019登壇● Software Design 2019年2月号〜4月号で短期連載「サーバーサイド開発の品質を向上させる Java→Kotlin移行のススメ」執筆
本日の内容
MyBatis Dynamic SQLのKotlinでの使い方をライブコーディングで説明します
MyBatisとは?
● JavaのポピュラーなO/Rマッパーの一つ● もともとXMLにSQLを記述し、インターフェースとマッピングする方式● XMLやInterface、Modelクラスなどのボイラープレートを生成するGeneratorがあるJava製のO/Rマッパー
XMLの例(抜粋)parameterType="love.kotlin.server.crud.database.User">insert into userid,name,age,
インターフェースの例(抜粋)@Insert({"insert into user (id, name, ","age)","values (#{id,jdbcType=INTEGER}, #{name,jdbcType=VARCHAR}, ","#{age,jdbcType=INTEGER})"})int insert(User record);int insertSelective(User record);
MyBatis Dynamyc SQL
● コード上でSQLを構築できる● こちらもGeneratorによる自動生成に対応● Kotlinでのコードも生成可能にMyBatisで動的SQL生成のスタック
fun findAll(): List {return userMapper.select {where(id, isEqualTo(1))}}
ここからはライブコーディングで説明します