gpt4 book ai didi

java - 在单个事务中运行 spring @Transactional 注释方法

转载 作者:行者123 更新时间:2023-11-30 22:12:10 26 4
gpt4 key购买 nike

我们有几个类以命令-查询-分离的方式写入和读取数据库层。

这些类中的每一个都分别用@Transactional(readOnly = true) 注释了@Transactional。

现在我们已经实现了数据导入,它创建了许多对象并使用我们的命令层将它们写入数据库。

目前,单个对象的每次写入都是在其自己的事务中完成的,我很确定这是一个主要的性能 killer 。

有没有一种简单的方法来注释数据导入类,即使它多次调用命令层中的许多@Transactional 注释方法,所有操作都将在单个事务中完成

这甚至是提高插入性能的有效方法,还是您认为这是个坏主意?

最佳答案

错误一:我使用了 ExecutorService,正如我在这篇文章中读到的 How to use spring transaction in multithread spring 不支持多线程结合事务。

错误二:我替换了ExecutorService,直接调用注解为@Transactional的spring托管类方法,但是这次不行,因为这个类是嵌套在调用类中的,所以不认为是调用“从外面”。

关于java - 在单个事务中运行 spring @Transactional 注释方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39729498/

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