This is a cache of http://dbflute.seasar.org/ja/manual/function/ormapper/behavior/select/selectbypkvalue.html. It is a snapshot of the page at 2024-11-01T00:28:30.563+0000.
selectByPKValue(pk) | DBFlute

selectByPK(pk)

概要

基本概念

PK値で null を戻す可能性のある一件検索 をします。検索結果が存在する場合としない場合で業務的な処理を分岐させる必要があるような場合に利用します。

会話上では、せれくとばいぴーけー と表現します。といいつつ長いので、どちらかというと ばいぴーけー という方が通じやすく呼びやすいかもしれません。

ささやかなメソッド

PK値での検索に向いていそうでいながら、関連テーブルの取得とか、その他ConditionBeanによるオプションが使えないので、 非常にシンプルな一件検索でしか利用できないのも事実です。ささやかな便利メソッドと考えてよいでしょう。

複合主キーの場合は、PK値の指定漏れが発生しないメソッドとして活用できますが、 ConditionBean自体にもPK値を等値条件として受け取るメソッドが用意されており、そこまでこのメソッドの存在感を高めるものにはなりません。

実装方法

実装の流れ

Behaviorの selectByPK() を呼び出し、PKの値を指定します。

e.g. selectByPKValue()の実装手順 (Eclipseでコード補完) {MEMBER} @Java
memberBhv.selBP // .selBP と打って enter
--
// セミコロン ';' を打って ctrl(or command) + 2 そして L
memberBhv.selectByPK(cb);
--
Member member = memberBhv.selectByPK(cb);
if (member != null) { 
    ... // 存在した場合の処理
} else {
    ... // 存在しなかった場合の処理
}

メソッド仕様

引数

該当のBehaviorに対応するテーブルのPKの値で。複合主キーの場合は引数が複数になります。

PK値のどれか一つにでもnullを指定した場合は例外発生します。

戻り値

selectEntity(cb) と同じです。

例外

selectEntity(cb) と同じです。

オーバーライド

selectList() と同じような要領となります。