[Seasar-user:13008] Re: [DBFlute]SqlLogRegist ry について

kubo [E-MAIL ADDRESS DELETED]
2008年 2月 22日 (金) 22:02:01 JST


久保です。

米原さん、こんばんは

取り急ぎ確認させて下さい。

batchUpdate()の実行時のSQLのログで、
Where句に排他制御用の条件が付与されていますか?
(ex. WHERE BOOK_ID = 2 AND U_TIMESTAMP = '2007...')

また、batchUpdate()の戻り値は何が入っていますでしょうか?
int[]の中身をご確認お願いします。

2008/2/22  <[E-MAIL ADDRESS DELETED]>:
> いつもお世話になっております。
>  米原です。
>
>  久保さん、ご回答ありがとうございます。
>
>
>
>  >アプリケーション起動時に以下の1行を実行して下さい。
>  >// Containerの初期化後に
>  >SqlLogRegistryLocator.setInstance(new SqlLogRegistryImpl());
>
>  ありがとうございます。 確認してみます。
>
>
>
>
>
>  >> batchXxx()の排他制御について
>  >正確には、S2Dao-1.0.47の場合にのみ、認識の通りであります。
>  >(以前のバージョンではどうしても実現できなかったため)
>
>  DBFlute0.6.4、S2Dao-1.0.47にてDAOを作成して、確認した
>  のですが、batchUpdateにて、楽観的排他時にExceptionを発生
>  させれませんでした。
>  こちらの使い方の間違いかもしれず、恐縮ですが、
>  もしお気づきのことがありましたら、ご指摘頂けないでしょうか?
>
>
>  ◆通常のupdate
>  以下、楽観的排他時にEntityAlreadyUpdatedExceptionが発生する
>  *************************************************************
>  //楽観的排他用に更新日時を設定
>  utime = aDto.getUtime();
>  entity.setUpdNitijiUs(utime);
>
>  // UPDATE実行
>  try {
>       behavior.update(entity);
>     } catch (Exception e) {
>       return "SUCCESS_1";
>     }
>  *************************************************************
>
>
>
>  ◆batchUpdateの場合
>  以下、同様の操作で楽観的排他時にEntityAlreadyUpdatedExceptionが発生しない(Exceptionでcatchしない)
>  *************************************************************
>  //楽観的排他用に更新日時を設定
>  utime = aDto.getUtime();
>  entity.setUpdNitijiUs(utime);
>
>  //Listの作成
>  List<Entity> entityList = new ArrayList() ;
>  entityList.add(0,entity);
>
>  // UPDATE実行
>  try {
>       behavior.batchUpdate(entityList);
>     } catch (Exception e) {
>       return "SUCCESS_1";
>     }
>  *************************************************************
>
>  お忙しいところすみません。。
>
>
> _______________________________________________
>  Seasar-user mailing list
>  [E-MAIL ADDRESS DELETED]
>  https://ml.seasar.org/mailman/listinfo/seasar-user
>


Seasar-user メーリングリストの案内