考虑在Java EE容器(或Spring容器)中使用JPA:

是否说JTA和资源本地事务之间的主要区别是(除了使用JTA由容器管理的第一级缓存的概念):

只有当entityManager刷新一个或多个实体并且在执行提交时(手动或在事务方法结束时)关闭它,JTA才会打开JDBC事务 .

第一个操作发送到数据库后,资源本地事务中的代码块会打开JDBC事务 . 没有持久性延迟的概念,以便像JTA那样优化对数据库的访问 .