jdbc transaction

Question:
Does "Connection.setAutoCommit(false)" mean "begin a transaction?"
Answer:
By default, JDBC connections start in autocommit mode. This means that every executed statement is treated as a separate transaction. A transaction is simply an operation that is irreversibly completed.

There are occasions where this default behavior is undesirable. Having every statement commited to the database can reduce performance. In addition, a set of statements may have dependencies such that previous statements should be undone if a succeeding statement fails. This is why the JDBC API provides the

Connection.setAutoCommit()
method. You can turn off the default autocommit behavior by calling this method with an argument of false. All statements executed afterward will not take effect until you call
commit()
Therefore, the first call of
setAutoCommit(false)
and each call of
commit()
implicitly mark the start of a transaction. Transactions can be undone before they are committed by calling
rollback()
You will typically rollback a transaction when one of its constituent statements fails.

你可能感兴趣的:(jdbc,performance)