|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
P
- ビジネスロジックへの入力値となるJavaBeanを指定するpublic interface BLogic<P>
ビジネスロジック処理クラスが実装すべきインタフェース。
ビジネスロジックは、このインタフェースを実装することにより作成する。
ビジネスロジックのエントリポイントとなるexecute()メソッドには、
JavaBeanが渡される。
下記は、典型的なビジネスロジックの実装例(ログイン処理)である。
・・・
public BLogicResult execute(LogonBean params) {
BLogicResult result = new BLogicResult();
// ユーザID
String userId = params.getUserId();
// パスワード
String password = params.getPassword();
// ログイン失敗回数
String failures = params.getFailures();
int failCount = Integer.parseInt(failures);
// ログイン失敗回数が規定回数以上の時、無条件で失敗
if (failCount > MAX_COUNT ) {
result.setResultString("loginError");
return result;
}
// ユーザがDBに存在するか
if (isAuthenticated(userId, password)) {
// 出力値とするJavaBeanを生成
LogonResultBean bean = new LogonResultBean();
// 存在する場合、UVOを生成し、結果オブジェクトに格納
sampleUVO uvo = UserValueObject.createUserValueObject();
bean.setUvo(uvo);
result.setResultObject(bean);
// 認証成功として遷移
result.setResultString("success");
} else {
BLogicMessages errors = new BLogicMessages();
BLogicMessage error = new BLogicMessage("message.error.login");
errors.add(ActionMessages.GLOBAL_MESSAGE, error);
result.setErrors(errors);
・・・
// 認証失敗として遷移
result.setResultString("failure");
}
return result;
}
下記は、ビジネスロジック内部からDAOを実行する例である。 DAOは予め設定されているものとする。DAOの設定については、 各DAO実装クラスを参照のこと。
private boolean isAuthenticated(String id, String pass) {
// DAOに渡すパラメータの作成
Map<String, String> parameters = new HashMap<String, String>();
parameters.put("ID", id);
parameters.put("PASSWORD", pass);
// DAOの実行
Map<String, Object>[] result = dao.executeForMapList(
USER_AUTHENTICATION, parameters);
if (result != null) {
// ユーザが存在
return true;
}
// ユーザが存在しない
return false;
}
DBのコミット、ロールバックは宣言的トランザクションを用いて行うため、
実装者は直接DBコネクションに対して、コミット・ロールバックは行わない。
関連する機能については、下記を参照のこと。
BLogicIOPlugIn
,
AbstractBLogicMapper
,
BLogicMapper
,
BLogicIO
,
BLogicProperty
,
BLogicResources
,
BLogicResult
,
AbstractBLogicAction
,
BLogicAction
メソッドの概要 | |
---|---|
BLogicResult |
execute(P params)
ビジネスロジックを実行する。 |
メソッドの詳細 |
---|
BLogicResult execute(P params)
params
- ビジネスロジック入力情報
|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |