こんにちは、井芹です。
回答ありがとうございます。
鈴木さん:
> > うちの場合はDB への
> > アクセス方法を統一するために、JDBCのラッパークラス(いわゆる Facade
>パターン)
> > を作成し、皆そこを介してSQL文を発行しています。ある処理で、発行している、
> > SQL文はそのラッパークラスが受け取った SQL 文を見れば分かるし、UPDATE
>文が
> > 予期しないレコードを更新しているかどうかは、UPDATE文の戻り値を確認する
> > ことで分かるようにしています。
ひがさん:
> うちのフレームワークでは、
> スプーフィング(だます、なりすます)を
> 使っています。TestCaseでは、データをXMLで用意し、
> 自作のSpoofingDataSourceManagerクラスでデータをロードします。
> javax.sql.DataSourceにアクセスするクラスは、
> XMLがロードされていれば、SpoofingDataSourceManager経由
> で、データ(XML)にアクセスし、XMLがロードされていなければ、
> DataSourceにアクセスするようになってます。
>
> データにアクセスするクライアントは、スプーフィングが
> 行われていることに気づきません。
ちょうど明日から次の開発に入りますので、参考にしたいと思います。
ありがとうございます。
> > ただ、これはあくまで DB にアクセスする直前で網を張っているだけなので、
> > たとえば、DB 内部で更新時トリガーを設定している場合、どこのデータが更新
> > されるかは、分からないことになります。
> >
> トリガもJavaで自前で実装しているので、
> DBがなくてもテストができます。
トリガはないので、今回は気にしなくてもよさそうです。