我有一个启动了多个线程的 Java 应用程序,它们都共享在主函数中创建的单个数据库连接。到目前为止,一切运行顺利。我担心将来会出现任何问题,例如损坏等?
答案1
如果出现以下情况,您将会遇到问题:
- 您使用事务。两个线程在同一个连接上启动事务对您的数据不利。想想如果一个线程想要回滚,mysql 会怎么做
- 您使用自动增量和LAST_INSERT_ID
。如果两个线程同时在同一个表上工作,如果它们共享同一个连接
,则最后一个 id 对它们来说是相同的 - 如果您不只使用“简单”的东西(又名select/insert/update
),可能会出现更多问题