gpt4 book ai didi

transactions - 使用事务进行多次保存

转载 作者:行者123 更新时间:2023-12-05 08:12:08 25 4
gpt4 key购买 nike

我需要在一次事务中在我的服务中保存更多实体 - 如果一次保存失败,则不应保存任何内容。我尝试使用@Transactional,但它不起作用,或者我不知道如何使用它:) 保存正确的记录,不保存错误的记录,我需要两者都不保存。我怎样才能做到这一点?

我的代码:

public interface MyRecordRepository extends JpaRepository<Record, Long>,
QueryDslPredicateExecutor<Record> {

}

@Service
public class MyPersisterServiceImpl implements MyPersisterService {...
@Autowired
private MyRepository myRepository;

@Override
@Transactional(rollbackFor = Exception.class)
public void saveRecords(List<Record> recordList) {
for(Record r : recordList){
myRepository.save(record);
}
}
...


@EnableTransactionManagement(mode = AdviceMode.ASPECTJ)
... // other annotations
public class Application extends SpringBootServletInitializer {
...

我的环境:Spring 4.0.7,带有 Spring 数据、querydsl、hibernate、apache tomcat 8、java 8。

谢谢

最佳答案

看起来 aspectj 配置有问题,因为在代理模式下它按预期工作......我暂时将这个问题标记为已解决。

关于transactions - 使用事务进行多次保存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27064413/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com