0

私はSpringフレームワークのバックグラウンドを持っています。これについて少し知っていれば、たとえばmyStuffTransactional()と呼ばれるトランザクションサービスメソッドを持つことができ、これには一連のDAO操作を含めることができ、DAOの操作のいずれか失敗すると、すべてのメソッド myStuffTransactional() が失敗し、ロールバックします。

例:

@Transactional
public void myStuffTransactional(){
   dao1.insertSome();
   dao2.deleteSome();
   dao3.updateSome();
}

しかし、ここで、dao3.updateSome() が失敗した場合、dao1 と doa2 がロールバックし、データベースが変更されずに残ることを知っています。

今、私は PHP Zend フレームワークを使用していますが、同じ Spring トランザクション動作を取得できます。私は次のような多くの例を見てきました:

$db->beginTransaction();
try
{
$db->exec($sqlSentence);
$query = $db->commit();
}
catch(Exception $e)
{
$db->rollBack();
}

そして、これはモデル(またはDAO)の方法で機能します。つまり、操作のための操作です。私が必要としているのは、Spring フレームワークと同じように、一連のデータベース操作のメソッド ラッパーです。

これが可能かどうか誰にもわかりますか?

よろしくお願いします。

4

0 に答える 0