最近,我遇到了以下一段代码:
@Transactional
public MyEntity insert(MyEntity entity) {
MyEntity merged = entityManager.merge(entity);
return myEntityRepository.save(merged);
}
其中实体管理器定义如下:
@PersistenceContext private EntityManager entityManager;
和存储库是 Spring QueryDSL 存储库:
@Repository
public interface MyEntityRepository extends QueryDslRepository<MyEntity>{
}
entityManager.merge(entity)
我的问题是,当我们使用myEntityRepository
右边的实体持久化实体时,是否真的有必要调用?entityManager 是否正在做一些存储库不能做的事情?调用存储库还不够吗?