我有以下代码,其中em是EntityManager:
Query query = em.createQuery( "SELECT e FROM TODO e " );
ret = (TODO) query.getSingleResult();
em.detach( ret );
return ret;
一旦我从这个方法返回ret(离开课程),实体经理是否会分离?为什么我需要使用分离方法?
答案 0 :(得分:2)
我希望在将该实体交给一个用户方法(可能是一个回调方法)之前分离一个实体,当该回调方法预期能够访问(读取)时,但在我的过程中不会影响/改变对象事务。
答案 1 :(得分:0)
当交易结束时,实体会自动分离。 有时你想要分离一个实体,因为你想在你不希望自动持久化的实体中进行更改。