`
wangzl2222
  • 浏览: 150897 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

Hibernate中的锁

 
阅读更多

 

作用是将指定的entity对象放入session对象的persistenceContext中去,打上MANAGED标记。
NONE和READ还有UPGRADE是三个LockOptions的选项。NONE表示将entity对象放入PC中的时候不会向数据库发出查询语句;READ选项表示将entity对象放入PC中的时候会同时向数据库发出select查询语句;UPGRADE表示将entity对象放入PC中的时候会向数据库发出select查询语句,而且,还会加上for update语句。
for update语句的作用是在查询的同时将数据锁住,其他人企图改变数据的时候就会进入等待状态,直到加锁的一方完成一次事务操作
from:http://zhidao.baidu.com/question/206269850.html

 

分享到:
评论

相关推荐

    Hibernate乐观锁和悲观锁分析

    在Hibernate中,悲观锁可以通过`Query.setLockMode()`或`Criteria.setLockMode()`方法设置锁模式。例如: ```java String hqlStr = "from TUser as user where user.name='Erica'"; Query query = session....

    Hibernate悲观锁和乐观锁的实现

    在Hibernate源码中,乐观锁的实现主要依赖于`AbstractEntityPersister`类的`checkOptimisticLocking()`方法,它会比较当前对象的版本信息与数据库中的版本信息,如果不同则抛出`StaleObjectStateException`异常。...

    hibernate的乐观锁和悲观锁

    **Hibernate中的悲观锁实现**: 在Hibernate中,可以通过`Query.setLockMode()`方法来实现悲观锁。例如: ```java String hqlStr = "FROM TUser AS user WHERE user.name = 'Erica'"; Query query = session....

    hibernate乐观锁和悲观锁学习

    在悲观锁中,Hibernate提供了多种锁模式,如`LockMode.NONE`、`LockMode.WRITE`、`LockMode.READ`等,这些主要由内部使用。而`LockMode.UPGRADE`和`LockMode.UPGRADE_NOWAIT`(Oracle特有的)则是我们在应用程序中...

    Hibernate乐观锁

    在Hibernate中,实现乐观锁的一种常见方式是通过版本字段(version field)来追踪数据的版本。当数据被读取时,版本字段会被一同获取;在更新时,Hibernate会将当前版本与数据库中的最新版本进行比较。如果两个版本...

    Hibernate锁机制_悲观锁和乐观锁

    Hibernate 中有两种锁机制:悲观锁和乐观锁。 一、悲观锁(Pessimistic Locking) 悲观锁是一种预防并发访问的机制,Hibernate 通过对数据库的锁定来实现。悲观锁假定任何时刻存取数据时,都可能有另一个客户也...

    Hibernate的乐观锁与悲观锁

    本文将详细介绍这两种锁的原理、应用场景以及如何在Hibernate中实现。 #### 二、悲观锁(Pessimistic Locking) ##### 2.1 定义 悲观锁是一种较为传统的锁机制,它假定并发冲突的可能性很高,因此在整个数据处理...

    Hibernate悲观锁与乐观锁

    Hibernate推荐的乐观锁实现是通过在实体类中添加一个版本字段,每次数据更新时,若版本号与数据库中的版本号匹配,更新成功并递增版本号;若不匹配,则表示数据已被其他用户修改,更新操作将失败。这通常通过`...

    数据库事务、hibernate悲观锁和乐观锁

    在《hibernate_3200_Concurrency_Pessimistic_Lock》这个压缩包中,很可能包含了关于Hibernate框架如何实现悲观锁和乐观锁的详细资料,包括源代码示例、配置方法和使用场景。通过学习这些资料,你可以深入了解这两种...

    Hibernate悲观锁与乐观锁案例

    在Java的持久化框架Hibernate中,悲观锁和乐观锁是两种重要的并发控制策略,它们用于管理数据库中的数据在多线程环境下的访问安全。本文将深入探讨这两种锁机制的原理、应用场景及其区别。 首先,我们来理解悲观锁...

    hibernate中文帮助文档

    乐观锁定版本控制:通过`@Version`注解,Hibernate可以实现乐观锁,防止并发更新时的数据冲突。 2.2.2. 映射简单属性和嵌入式对象:使用`@Column`注解映射简单属性,如字符串、整数等。`@Embeddable`和`@Embedded`...

    Hibernate5中文用户使用手册

    还讨论了并发控制中的乐观锁和悲观锁。 JNDI和锁:JNDI(Java Naming and Directory Interface)用于在Java应用程序中访问命名和目录服务。锁部分则介绍了乐观锁和悲观锁的概念及其使用方法。 Fetching(抓取):...

    hibernate中文参考文档

    ### Hibernate中文参考文档知识点概述 ...通过以上对Hibernate知识点的详细介绍,可以帮助开发人员更好地理解和掌握其核心技术,从而在实际项目中更加高效地运用Hibernate解决复杂的数据库操作问题。

    Hibernate version 乐观锁 (xml方式)

    在Hibernate中,乐观锁的处理主要在`org.hibernate.event.internal.DefaultMergeEventListener`和`org.hibernate.event.internal.DefaultUpdateEventListener`这两个事件监听器中完成。当调用`Session.merge()`或`...

    hibernate5.0中文文档

    在Hibernate 5.0中,这个框架进一步提升了性能和易用性,引入了许多新的特性和改进。 文档首先会介绍Hibernate的基本概念,包括实体(Entity)、持久化(Persistence)、对象关系映射(ORM)以及Session和...

    hibernate3 chm 格式 中文

    11. **事务与并发控制**:讨论Hibernate的事务管理,以及乐观锁、悲观锁等并发控制策略。 12. **事件监听与拦截器**:介绍如何使用事件监听器和拦截器进行自定义行为扩展。 13. **性能优化**:提供一些最佳实践和...

    hibernate锁实验,以及解决方案

    4. ** Hibernate锁的使用** - `Session.lock()`: 将对象锁定在指定的锁模式下。 - `Query.setLockMode()`: 对查询结果应用锁模式。 - `Criteria.setLockMode()`: 同上,针对Criteria查询。 5. **实验情况** - ...

    Hibernate 乐观和悲观锁

    标题中的“Hibernate 乐观和悲观锁”涉及到的是Java领域中持久化框架Hibernate中的一种数据并发控制策略。在多线程环境下,为了保证数据的一致性和完整性,数据库管理系统提供了多种锁定机制,其中乐观锁和悲观锁是...

    Hibernate4.1.11中文手册

    《Hibernate4.1.11中文手册》是针对Java开发者的重要参考资料,它详细阐述了Hibernate框架在4.1.11版本中的各项功能和用法。Hibernate是一个开源的对象关系映射(ORM)框架,它允许开发者使用面向对象的编程方式来...

Global site tag (gtag.js) - Google Analytics