?? txtest.java
字號:
package cn.itcast.jdbc;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class TxTest {
/**
* @param args
* @throws SQLException
*/
public static void main(String[] args) throws Exception {
tx();
}
static void tx() throws Exception {
Connection conn = null;
Statement st = null;
ResultSet rs = null;
try {
conn = JdbcUtils.getConnection();
conn.setAutoCommit(false);
conn.setTransactionIsolation(Connection.TRANSACTION_READ_COMMITTED);
st = conn.createStatement();
String sql = "update user set account=account-50 where id=1";
int i = st.executeUpdate(sql);
System.out.println("i=" + i);
System.out.println("process...");
Thread.sleep(20000);
sql = "select age from user where id=3";
rs = st.executeQuery(sql);
while (rs.next()) {
int age = rs.getInt("age");
if (age < 100)
throw new RuntimeException("帳號無效");
}
sql = "update user set account=account+50 where id=3";
i = st.executeUpdate(sql);
System.out.println("i=" + i);
conn.commit();
} catch (Exception e) {
conn.rollback();
throw e;
} finally {
JdbcUtils.realse(rs, st, conn);
}
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -