首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

Hibernate征程(八)之锁

2013-10-22 
Hibernate征途(八)之锁锁是在开发中常见的一个问题,锁住的数据可以保证访问的排他性,可以说只要当同一个资

Hibernate征途(八)之锁

   锁是在开发中常见的一个问题,锁住的数据可以保证访问的排他性,可以说只要当同一个资源有可能被同时访问时,就应当考虑到锁的问题。Hibernate中锁有两种:悲观锁和乐观锁。

悲观锁

    悲观锁的意思是,对数据访问、修改可能出现的问题持悲观的态度,所以要防范于最初的未然:在数据的整个访问过程中都将数据锁定。悲观锁的实现,依靠数据库提供的锁机制,因为在数据一旦被访问就被锁定,所以可以保证实现真正的访问排他性,否则,即使在本系统中实现了加锁机制,也无法保证外部系统不会修改数据。

    最常见的方式为:


    乐观锁机制避免了长事务中的数据库加锁开销,大大提升了大并发量下的系统整体性能表现;但因为乐观锁机制往往与系统的数据存储逻辑有关系,例如其他系统对数据的同时修改,可能会将脏数据存入数据库。

总结

    二者的使用要根据实际情况,悲观锁和乐观锁就先说到这里。

热点排行