Symfony 2& Doctrine 2 ORM交易。关闭EntityManager?

时间:2016-08-16 19:26:21

标签: symfony orm doctrine-orm

这是一个简单的问题。在Doctrine 2 ORM 2 documentation中,您可以阅读:

  

使用显式事务划分并发生异常时,   该事务应该立即回滚和   通过调用EntityManager和{}关闭了EntityManager#close()   随后丢弃,如上例所示。

我知道我应该关闭EntityManager,但是上面几行的例子

<?php
// $em instanceof EntityManager
$em->getConnection()->beginTransaction(); // suspend auto-commit
try {
    //... do some work
    $user = new User;
    $user->setName('George');
    $em->persist($user);
    $em->flush();
    $em->getConnection()->commit();
} catch (Exception $e) {
    $em->getConnection()->rollBack();
    throw $e;
}

我在catch块中看不到$em->close();

那么,我应该或不应该使用$em->close();关闭EntityManager吗?

0 个答案:

没有答案