SQL操作 (キャメルケースとスネークケースを同一視する)
Spring Boot上でのSQL操作を簡略化するために用意されているDependencyであるMyBatisには、標準でDB上のカラム名とBeanで設定したカラム名が異なる場合、それらを別のものとして扱う機能が備わっています。
この仕様により、キャメルケース (camelCase) とスネークケース (snake_case) の違いも別のものとして認識されてしまいます。しかし、これらを同一視することで、DB操作をよりスムーズに行えるようになります。
例
例えば、データベースのカラム名が moto_no
の場合、
JavaのGetterメソッドの規則に従い getMotoNo
というメソッドを作成できます。
想定ケース
データベースのカラム名:
moto_no
JavaのBean:
private String motoNo;
public String getMotoNo() {
return motoNo;
}
この場合、MyBatisのデフォルト設定では moto_no
と motoNo
は異なるものとして扱われてしまいます。
キャメルケースとスネークケースを同一視する方法
この問題を解決するには、application.properties
に以下の設定を追加します。
mybatis.configuration.map-underscore-to-camel-case=true
この設定を有効にすることで、データベースの moto_no
は motoNo
と自動的にマッピングされ、MyBatisでのマッピングが簡略化されます。