/**
- Jdbc中的事务管理是由来连接对象完成的
*/
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
public class JDBCTest1 {
public static void main (String[] args) {
//mysql驱动类
String driverClass = “com.mysql.jdbc.Driver”;
String url = “jdbc:mysql://192.168.93.88:3306/mydb”;
String username = “root”;
String password = “”;
//数据库连接接口
Connection conn = null;
//执行sql语句的接口
Statement st = null;
try {
//加载驱动类到虚拟机
Class.forName ( driverClass );
//连接数据库
conn = DriverManager.getConnection (url,username,password);//url地址,username,password
//创建语句对象
st = conn.createStatement (); //功能是执行sql语句
conn.setAutoCommit ( false );//设置自动提交为false,即不自动提交
String sql = null;
sql = "update Account set account = account - 1000 where id = 1;";
st.execute ( sql );
sql = "update Account set account = account + 1000 where id = 2;";
st.execute ( sql );
conn.commit (); //设置提交
} catch (Exception e) {
e.printStackTrace ();
}
try {
//设置回滚事务
if (conn != null)
conn.rollback ();
} catch (SQLException e) {
e.printStackTrace ();
}finally {
//关闭这些对象,是为了释放资源
try {
if (st != null)
st.close ();
if (conn != null)
conn.close ();
} catch (SQLException e) {
e.printStackTrace ();
}
}
}
}