首先得确认的是,多个线程共享一个连接这种方式是不可取的,现在都采用连接池的方式
提出这个问题是因为一个同事在实际项目中恰好不恰当的在多个线程中采用了共享一个连接的方式,且用了事务的方式
1.当多个线程共享一个连接时,当一个线程中执行commit操作时,则多个线程中的对这个连接执行的sql语句都会生效
2.当多个线程都commit时,即一个连接多次commit,则后来的commit操作都是空的操作,即不起作用
首先得确认的是,多个线程共享一个连接这种方式是不可取的,现在都采用连接池的方式
提出这个问题是因为一个同事在实际项目中恰好不恰当的在多个线程中采用了共享一个连接的方式,且用了事务的方式
1.当多个线程共享一个连接时,当一个线程中执行commit操作时,则多个线程中的对这个连接执行的sql语句都会生效
2.当多个线程都commit时,即一个连接多次commit,则后来的commit操作都是空的操作,即不起作用