PreparedStatement: 可以灵活指定SQL语句中的变量
CallableStatement: Java调用存储过程
批处理:
st = conn.createStatement();
st.addBatch("insert into dept2 values (21, 'Game1', 'BJ')");
st.addBatch("insert into dept2 values (22, 'Game2', 'SH')");
st.addBatch("insert into dept2 values (23, 'Game3', 'SH')");
st.addBatch("insert into dept2 values (24, 'Game4', 'FJ')");
st.executeBatch();
st.close();
pst = conn.prepareStatement("insert into dept2 values (?,?,?)");
pst.setInt(1, 61);
pst.setString(2, "Software");
pst.setString(3, "TJ");
pst.addBatch();
pst.setInt(1, 66);
pst.setString(2, "BigData");
pst.setString(3, "TJ");
pst.addBatch();
pst.executeBatch();
pst.close();
Transaction:
如何一条DML语句,执行的时候会自动提交,因为设置是否自动提交的语句默认情况下为真:conn.SetAutoCommit(true);
conn.setAutoCommit(false);
st = conn.createStatement();
st.addBatch("insert into dept2 values (66, 'BI', 'Shanghai')");
st.addBatch("insert into dept2 values (99, 'ES', 'Shanghai')");
st.executeBatch();
conn.commit();
conn.setAutoCommit(true);
catch到任何SQLException,记得rollback并设置conn.setAutoCommit(true);
DataSource
DriverManager的替代
连接池实现
分布式实现
DataSource的属性可以动态改变
RowSet
新的ResultSet
从ResultSet继承
支持断开的结果集
支持JavaBeam
如何掌握JDBC?
记住常用各种类型程序段
将程序处理完善
JDBC初步
DML
Transaction
DataSource & RowSet