import javax.sql.DataSource; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.SQLException; public class TransactionExample { private DataSource dataSource; public void setDataSource(DataSource dataSource) { this.dataSource = dataSource; } public void performTransaction() { Connection connection = null; PreparedStatement preparedStatement = null; try { connection = dataSource.getConnection(); connection.setAutoCommit(false); preparedStatement = connection.prepareStatement("INSERT INTO users (name, age) VALUES (?, ?)"); preparedStatement.setString(1, "John"); preparedStatement.setInt(2, 30); preparedStatement.executeUpdate(); connection.commit(); } catch (SQLException e) { try { if (connection != null) { connection.rollback(); } } catch (SQLException ex) { } } finally { try { if (preparedStatement != null) { preparedStatement.close(); } if (connection != null) { connection.close(); } } catch (SQLException ex) { } } } }


上一篇:
下一篇:
切换中文