|
||||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
@Rcsid(value="$Revision: 15138 $ $Date: 2009-01-17 02:38:48 +0900 $") public interface SqlPreCheck
DAOの更新処理SQL実行前チェック。
DAOの更新メソッドにて、処理を行う前に バインド値(DTO)の値のチェックを行う。
このインタフェースのcheckメソッドを実装し、設定ファイルのDAOに インジェクションすることで使用可能となる。
実装方法例:
// DATA2項目のチェック長
private int data2Length = 0;
// SQL実行前チェック。
public void check(ProcessContext context, DTO dto) throws FinalunaApplException {
RequestDTO reqDto = (RequestDTO) dto;
// DATA1項目の必須チェック
StringType data1 = (StringType) reqDto.get("DATA1");
if ((data1 == null) || (data1.isNull())) {
throw new CheckException(new IllegalArgumentException(), "SampleSqlCheck.01", "DATA1 is null");
}
// DATA2項目の長さチェック
StringType data2 = (StringType) reqDto.get("DATA2");
if (data2.length() < this.data2Length) {
throw new CheckException(
new IllegalArgumentException(), "SampleSqlCheck.02", "Data2 is illegal to length");
}
}
// DATA2項目のチェック長を設定する。
public void setData2Length(int data2Length) {
this.data2Length = data2Length;
}
| メソッドの概要 | |
|---|---|
void |
check(ProcessContext context,
DTO dto)
SQL実行前チェック。 |
| メソッドの詳細 |
|---|
void check(ProcessContext context,
DTO dto)
throws FinalunaApplException
context - コンテキストdto - バインド値のDTO
FinalunaApplException - 業務ロジックがスローする例外(業務例外)
|
||||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||