我在网站上使用JPA。在探讨了用于保存数据的选项之后,我发现了两种方法。第一种方法是使用javax.persistence.EntityManager的实现。我使用LocalContainerEntityManagerFactoryBean实例化EntityManager的实例。一旦获得EntityManager的实例,就可以使用它来保存实体。例如,
entityManager.merge(someEntity);
另一个选择是使用org.springframework.data.repository.CrudRepository的实例。一个,我获得一个CrudRepository的实例,我可以用它来保存一个实体。例如,
aCrudRepository.save(someEntity);
使用EntityManager和CrudRepository将实体持久保存到数据库之间有什么区别?两种方法(实体管理器与Crud存储库)的优点或缺点是什么?
最佳答案
这两个接口(interface)提供了两种不同的方法:
org.springframework.data.repository.CrudRepository
是提供CRUD操作的存储库的通用接口(interface)。 javax.persistence.EntityManager
与持久性相关联上下文。 Spring有自己的接口(interface),扩展了
CrudRepository
为此,它称为 JpaRepository
。 我希望您了解持久性API的优点或缺点。如果您不这样做,则可以阅读this question的答案。
关于spring - Spring Entity Manager和Spring Data Repository有什么区别?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14621495/