java - 事务第二部分中的 Save(List<S>) 与 save(Entity)

标签 java spring hibernate spring-data-jpa spring-data

问题是 CrudRepository and Hibernate: save(List<S>) vs save(Entity) in transaction 的后续问题.

如果我没有用@Transactional标记下面的内容。如果数据库连接断开或在 Spring Data JPA 保存列表时发生某些情况。列表会回滚还是仅部分保存?

@Transactional
public void processData() {
   List<MyEntity> entities = ....;
   MyEntityRepository.save(entities);
}

最佳答案

CrudRepository提供的方法已经可以交易了。

这个根本不需要,看一下this就可以了执行。所有方法delete , 删除全部 ,全部保存are annotated with @事务性的。这意味着默认实现已经考虑到了这一点。

其实哪里都没有@Transactional注解,默认@Transactional(readOnly = true) ,即在类级别上使用。

关于java - 事务第二部分中的 Save(List<S>) 与 save(Entity),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54887843/

相关文章:

java - REST 的 Spring Security

spring - 在 Spring 中何时使用 Qualifier 和 Primary

java - 获取用户输入以创建 mysql 数据库

mysql - 在 Grails war 中几个小时后与数据库的连接丢失

java - Hibernate原生查询返回List对象列表

java - 线程中的异常 "main"org.hibernate.AnnotationException : @OneToOne or @ManyToOne

java - spring mvc hibernate中刷新页面时如何添加更多购物车而不增加数量

java - 无法在 Netbeans JavaFX 项目中集成使用 SceneBuilder 生成的 FXML

java - Rabbit 消息监听器的执行失败,并且没有设置 ErrorHandler。无法调用参数类型为 [class [B] 的目标方法,

java - 方法结束之前的递归不是无限循环?