オブジェクト/リレーショナル マッパーを使用してデータベースと通信しています。私の場合のライブラリは、トランザクション管理にも使用されるiBatisです。しかし、最近、文書化startTransaction()
されたetc. が呼び出されたにもかかわらず、実際には iBatis がトランザクションを開始しないというケースがありました。いくつかのデバッグの後、私の側に設定ミスがあることがわかりました。
iBatis のせいにする人もいるかもしれませんが、今後はそのような誤解を避けたいと思います。だからここに質問があります:
現在のデータベース接続がトランザクションで実行されていることをプログラムでアサートするにはどうすればよいですか?
私が使用しているデータベースは、Oracle、MySQL、およびH2 (テスト用) です。