日期:2014-05-16  浏览次数:20479 次

黑马程序员__JDBC事务及将查询结果封装成对象(通用)

---------------------- android培训java培训、期待与您交流! ----------------------

 

事务(ACID):

1、  原子性(atomicity):组成事物处理的语句形成了一个逻辑单元,不能只执行其中的一部分;

2、  一致性(consistency):在事务处理执行前后,数据库是一致的(数据库数据完整性约束)

3、  隔离性(isolcation):一个事务处理对另一个事务处理的影响;

4、  持续性(durability):事务处理的效果能够被永久保存下来;

Connection.setAutoCommit(false);--à打开事务

Connection.commit( );--à提交事务

Connection.rollback( );--à回滚事务

保存点(SavePoint

1、  当只想撤销事务中的部分操作时可使用SavePoint

2、  SavePoint sp=connection.setSavePoint( );

3、  Connection.rollback(sp);connection.commit( );

JTA:

1、  跨越多个数据源的事务,使用JTA容器实现事务;

2、  分成两阶段提交

Javax.transaction.UserTransaction tx=(UserTransaction)ctx.lookup(“jndiName”);

Tx.begin( );

隔离级别:读未提交(Read uncommitted)、读已提交(Read committed)、

可重复读(Repeatable read)、可串行化(Serializable--à脏读、不可重复读、幻读

批处理:PreparedStatement,addBatch( );

PreparedStatement.executeBatch( );

可滚动的结果集:

             Statement st=connection.createStatement(Result.TYPE_SCROLL_SENSITIVE,