我们正在使用spring批处理来运行我们的数据处理步骤。在每一步中,我们都有不使用事务管理的代码。我们得到“java.sql.SQLException:Connection已经关闭。”在Spring批处理中运行时,我们的数据库操作的异常,因为它在事务中的每个步骤开始。有人可以建议如何禁用它们。
[编辑] 我正在寻找像这里提到的选项http://forum.spring.io/forum/spring-projects/batch/91158-legacy-integration-tasklet-transaction。这个解决方案在我的情况下不起作用。
[编辑] 我找到了一种方法来清除jdbc模板中的事务,运行我的代码并将其初始化。它对我有用。这是一种正确的方法吗?
{{1}}
答案 0 :(得分:0)
您必须启用它们,而不是禁用事务,因为如果没有事务,您将无法使用数据库。您可以像在通常的应用程序中一样创建它们(连接到db,打开事务,关闭事务,关闭连接)但是使用spring可以使用@Transactional注释或使用xml config来执行此操作。