事务中的java保存(列表)与保存(实体)第二部分
问题是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);
}
# 1 楼答案
这在很大程度上取决于
MyEntityRepository
的实现例如,如果它是由spring作为SimpleParepository生成的,那么它将被回滚。因为如链接问题所示,
save()
方法也用@Transactional
注释:但对于每一个其他的实现?我要说的是,这种行为是没有定义的