ScalikeJDBCの小技

scala 開発関連
スポンサーリンク

基本的には自動生成したmodelを使うのですが、どうしてもっていう時に便利な小技です。

SELECTの結果の別名を短縮したくないとき

そこまで性能にこだわってなく、SQLログのみやすさを重視する場合の設定方法です。

object User extends SQLSyntaxSupport[User] {
  /** 短縮名を使用しない。*/
  override def useShortenedResultName: Boolean = false

  //略

}

useShortenedResultNameをoverrideして書き換えることで普通のSQLにできます。

カラム名が特殊すぎてうまくマッピングできないとき

DBのカラム名をどうしても変えられないときは、手動マッピングを定義することで回避することができます。キーには正規表現も使えるみたいです。

object User extends SQLSyntaxSupport[User] {
  /** 解決できない名前のマッピング定義。*/
  override def nameConverters: Map[String, String] = Map(
    "nameKL" -> "name_k_l",
    "nameKF" -> "name_k_f"
  )

  // 略

}

参考

タイトルとURLをコピーしました