bingoideas

轻叩枝头结,默数桃花开
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

2011年4月9日

摘要: 事务的隔离级别 SQL Server通过在锁资源上使用不同类型的锁来隔离事务。为了开发安全的事务,定义事务内容以及应在何种情况下回滚至关重要,定义如何以及在多长时间内在事务中保持锁定也同等重要。这由隔离级别决定。应用不同的隔离级别,SQL Server赋予开发者一种能力,让他们为每一个单独事务定义与其他事务的隔离程度。事务隔离级别的定义如下: 是否在读数据的时候使用锁读锁持续多长时间在读数据的时候使用何种类型的锁 读操作希望读已经被其他事务排他锁住的数据时,怎么办?在这种情况下,SQL Server可以: 一直等到其他事务释放锁读没有提交的数据读数据最后提交后的版本 ANSI 99定义了4种事 阅读全文

posted @ 2011-04-09 13:14 bingoideas 阅读(796) 评论(0) 推荐(0) 编辑

摘要: ORACLE数据库事务隔离级别 事务隔离级别:一个事务对数据库的修改与并行的另一个事务的隔离程度。两个并发事务同时访问数据库表相同的行时,可能存在以下三个问题:1、幻想读:事务T1读取一条指定where条件的语句,返回结果集。此时事务T2插入一行新记录,恰好满足T1的where条件。然后T1使用相同的条件再次查询,结果集中可以看到T2插入的记录,这条新纪录就是幻想。2、不可重复读取:事务T1读取一行记录,紧接着事务T2修改了T1刚刚读取的记录,然后T1再次查询,发现与第一次读取的记录不同,这称为不可重复读。3、脏读:事务T1更新了一行记录,还未提交所做的修改,这个T2读取了更新后的数据,然后T 阅读全文

posted @ 2011-04-09 13:02 bingoideas 阅读(862) 评论(0) 推荐(0) 编辑

摘要: 采用声明式事务 1、声明式事务配置 * 配置SessionFactory * 配置事务管理器 * 事务的传播特性 * 那些类那些方法使用事务 2、编写业务逻辑方法 * 继承HibernateDaoSupport类,使用HibernateTemplate来持久化,HibernateTemplate是Hibernate session的封装 * 默认的回滚是RuntimeException(包括继承RuntimeException的子类),普通异常不回滚 * 在编写业务逻辑方法时,最好将异常一直往上抛出,在呈现层处理(struts) * spring的事务需要设置到业务方法上(事务边界定义到Fac 阅读全文

posted @ 2011-04-09 12:58 bingoideas 阅读(611) 评论(0) 推荐(0) 编辑

摘要: 关键字: hashset类的用法 添加 删除 遍历 HashSet是实现Set接口的一个类,具有以下的特点:Ø 不能保证元素的排列顺序,顺序有可能发生变化。Ø 另外HashSet不是同步的,如果多个线程同时访问一个Set,只要有一个线程修改Set中的值,就必须进行同步处理,通常通过同步封装这个Set的对象来完成同步,如果不存在这样的对象,可以使用Collections.synchronizedSet()方法完成。Set s = Collections.synchronizedSet(new HashSet(...));Ø 元素值可以是null。方法不是很多,在前面 阅读全文

posted @ 2011-04-09 12:54 bingoideas 阅读(9910) 评论(0) 推荐(0) 编辑

摘要: 1. 脏读 :脏读就是指当一个事务正在访问数据,并且对数据进行了修改,而这种修改还没有提交到数据库中,这时,另外一个事务也访问这个数据,然后使用了这个数据。 2. 不可重复读 :是指在一个事务内,多次读同一数据。在这个事务还没有结束时,另外一个事务也访问该同一数据。那么,在第一个事务中的两次读数据之间,由于第二个事务的修改,那么第一个事务两次读到的的数据可能是不一样的。这样就发生了在一个事务内两次读到的数据是不一样的,因此称为是不可重复读。例如,一个编辑人员两次读取同一文档,但在两次读取之间,作者重写了该文档。当编辑人员第二次读取文档时,文档已更改。原始读取不可重复。如果只有在作者全部完成编写 阅读全文

posted @ 2011-04-09 12:52 bingoideas 阅读(1190) 评论(0) 推荐(1) 编辑