【发布时间】:2019-09-15 17:45:26
【问题描述】:
在这个link中,作者声明:
"在此更改存储后 序列表使用的引擎可以是 MyISAM 或 INNODB,因为 序列是使用新连接分配的,而不是 受到可能正在进行的任何其他交易的影响。 ”。
我们为什么要创建一个新的连接来启动一个事务?我认为如果一个连接没有同时被两个线程持有,那么这个连接上就不会有“其他事务”。一个连接可以同时被两个线程看到吗?
【问题讨论】:
标签: java spring jdbc spring-jdbc
在这个link中,作者声明:
"在此更改存储后 序列表使用的引擎可以是 MyISAM 或 INNODB,因为 序列是使用新连接分配的,而不是 受到可能正在进行的任何其他交易的影响。 ”。
我们为什么要创建一个新的连接来启动一个事务?我认为如果一个连接没有同时被两个线程持有,那么这个连接上就不会有“其他事务”。一个连接可以同时被两个线程看到吗?
【问题讨论】:
标签: java spring jdbc spring-jdbc
我们为什么要创建一个新的连接来启动一个事务?
因为没有办法绕过它。您必须先与数据库建立连接,然后才能查询数据库。
两个线程可以同时看到一个连接吗?
是的,它could。特别是如果两个线程正在使用不同的表进行操作。为什么不重用现有的连接?在更现代的框架中,您会发现连接池具有开放的连接池,任何线程都可以使用它。最好有一个连接池。
【讨论】: