gpt4 book ai didi

java - 一个 JDBC 连接中可以有两个并发事务吗?

转载 作者:搜寻专家 更新时间:2023-11-01 01:43:47 26 4
gpt4 key购买 nike

现在我有两个对象在自动提交模式下共享一个到 Oracle 数据库的数据库连接。但现在两个对象都需要启动自己的事务才能完成工作。

后果是什么?

是否有必要为每个对象提供自己的连接以便进行并发事务,或者是否可以保持代码不变并为两个并发事务使用相同的连接?

如果我有 10000 个对象而不是 2 个,最佳实践是什么?如果每个对象都可以启动一个事务,我需要多少个数据库连接。我需要 10000 个数据库连接吗?

最佳答案

一个连接上不可能有两个事务。除了连接中任何潜在的线程问题外,只有一个 commit()方法,它会提交自上次提交/回滚以来的所有 Activity ,无论它们来自哪个对象。

如果您需要两个事务,请使用两个连接。

如果您有 1000 个对象,则使用 connection pool合理化与数据库的 Activity 连接数。

关于java - 一个 JDBC 连接中可以有两个并发事务吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18877371/

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