`
newleague
  • 浏览: 1505565 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类

hibernate实例简析-hibernate_pessimistic_locking

阅读更多
悲观锁

悲观锁的实现,通常依赖于数据库机制,在整个过程中将数据锁定,其它任何用户都不能读取或修改
===
Inventory inv = (Inventory)session.load(Inventory.class, 1, LockMode.UPGRADE);
System.out.println("itemName=" + inv.getItemName());
System.out.println("quantity=" + inv.getQuantity());
inv.setQuantity(inv.getQuantity() - 200);
session.update(inv);
---
Inventory inv = (Inventory)session.load(Inventory.class, 1, LockMode.UPGRADE);
System.out.println("itemName=" + inv.getItemName());
System.out.println("quantity=" + inv.getQuantity());
inv.setQuantity(inv.getQuantity() - 200);
session.update(inv);
===
<hibernate-mapping>
<class name="com.bjsxt.hibernate.Inventory" table="t_inventory">
<id name="itemNo">
<generator class="native"/>
</id>
<property name="itemName"/>
<property name="quantity"/>
</class>
</hibernate-mapping>
===
Inventory inv = new  Inventory();
inv.setItemNo(1001);
inv.setItemName("脑白金");
inv.setQuantity(1000);

session.save(inv);
===
public class Inventory {

private int itemNo;

private String itemName;

private int quantity;
分享到:
评论

相关推荐

    Hibernate_3.2.0_Reference_zh_CN.zip

    10. **版本控制(Optimistic Locking / Pessimistic Locking)**:Hibernate提供了乐观锁和悲观锁机制,防止并发访问时的数据冲突。 11. **映射文件(Mapping Files)**:通常使用XML文件(如.hbm.xml)来定义对象-...

    2.14所需资源清单及费用估算表.doc

    _three-point estimating_是指根据项目中每个任务的optimistic、most likely和pessimistic三个估算值,估算总成本。 在IT项目中,成本估算的重要性不言而喻。好的成本估算可以帮助项目经理和项目团队更好地进行资源...

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

    一、悲观锁(Pessimistic Locking) 悲观锁是一种预防并发访问的机制,Hibernate 通过对数据库的锁定来实现。悲观锁假定任何时刻存取数据时,都可能有另一个客户也正在存取同一笔数据,因此对数据采取了数据库层次...

    Hibernate_DEV_GUIDE

    - **悲观锁(Pessimistic Locking)**:默认情况下Hibernate使用悲观锁机制,它假设数据会被修改,因此在事务开始时就锁定数据。 - **乐观锁(Optimistic Locking)**:与悲观锁相反,它假设数据不会被修改,因此在提交...

    Hibernate 2nd-level cache: JBoss Caching 配置与注意事项

    4. 对于悲观锁(Pessimistic Locking)和乐观锁(Optimistic Locking),需结合具体业务场景选择合适的锁策略,避免并发问题。 5. 使用缓存可能导致内存占用增加,注意监控和管理内存资源。 总之,正确配置和使用...

    hibernate 开发指南下载

    - **悲观锁 (Pessimistic Locking)**: 在整个事务期间锁定资源,以防止其他事务同时修改同一资源。 - **乐观锁 (Optimistic Locking)**: 通过版本号机制来检测并解决并发修改问题。 - **Hibernate分页**: 提供了对...

    Hibernate开发指南

    - **悲观锁(Pessimistic Locking)**: 在操作数据前先锁定资源。 - **乐观锁(Optimistic Locking)**: 基于版本号或时间戳机制实现。 #### 十五、Hibernate分页 - 实现分页查询,提高大数据量下的查询效率。 #### ...

    Hibernate_3.2.0_符合Java习惯的关系数据库持久化

    11.4. 悲观锁定(Pessimistic Locking) 11.5. 连接释放模式(Connection Release Modes) 12. 拦截器与事件(Interceptors and events) 12.1. 拦截器(Interceptors) 12.2. 事件系统(Event system) 12.3. Hibernate...

    Hibernate乐观锁和悲观锁分析

    主要分为两种类型:乐观锁(Optimistic Locking)和悲观锁(Pessimistic Locking)。 **悲观锁(Pessimistic Locking)** 悲观锁假设数据在任何时候都可能发生并发冲突,因此在数据读取时就对其进行锁定,确保在...

    Hibernate教程26_事务并发处理

    在Hibernate中,可以通过`@LockModeType.PESSIMISTIC_WRITE`或`@LockModeType.PESSIMISTIC_READ`注解来实现悲观锁。例如,s2sh_relation25_pessimistic_Lock.zip中的源码可能包含了如何在Service层或DAO层使用悲观锁...

    Hibernate 开发学习指导书

    - **悲观锁** (Pessimistic Locking): 在操作数据前先加锁,确保数据的一致性。 - **乐观锁** (Optimistic Locking): 通过版本号等方式检测数据是否被其他事务修改,从而决定是否执行更新操作。 #### 十一、...

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

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

    Hibernate4实战 之第五部分:Hibernate的事务和并发

    2. **悲观锁(Pessimistic Locking)**:假设数据冲突很常见,因此在数据读取时即锁定数据,直至事务完成。Hibernate 支持行级悲观锁,通过 SQL 的 `SELECT FOR UPDATE` 实现。 #### 四、Session与事务 **Hibernate ...

    hibernate3.2中文文档(chm格式)

    11.4. 悲观锁定(Pessimistic Locking) 11.5. 连接释放模式(Connection Release Modes) 12. 拦截器与事件(Interceptors and events) 12.1. 拦截器(Interceptors) 12.2. 事件系统(Event system) 12.3. Hibernate...

    ASM.rar_Pessimistic_交易策略_股票_股票 java_股票分析系统

    市场中有N个交易主体(Agent)对同一支股票进行交易,根据采用的市场策略将市场交易者分成三类:基础分析交易者,乐观主义交易者和悲观主义交易者。 市场环境的变化会引起交易主体行为模式的转变。...

    HibernateAPI中文版.chm

    11.4. 悲观锁定(Pessimistic Locking) 11.5. 连接释放模式(Connection Release Modes) 12. 拦截器与事件(Interceptors and events) 12.1. 拦截器(Interceptors) 12.2. 事件系统(Event system) 12.3. Hibernate...

    Hibernate4.1

    14. **版本控制(Optimistic Locking/Pessimistic Locking)**:Hibernate提供乐观锁和悲观锁来防止并发访问时的数据冲突。 15. **事件监听器**:可以通过实现特定接口或使用注解来监听持久化过程中的各种事件,如...

Global site tag (gtag.js) - Google Analytics