`

hibernate的乐观锁与悲观锁,映射文件的配置,常见的异常

阅读更多
悲观锁,之所以叫悲观锁,是因为过于悲观,不够动态与灵活,原理是基于数据库(mysql,oracle)自带的锁的隔离机制,相当于java中线程中的同步锁,只能等待其他线程释放锁才能执行,所以说效率肯定不高.

乐观锁,就比悲观锁灵活多了,其实它没有加锁,效率比悲观锁高,它是在数据库表中额外添加一个字段(版本version),没对表更新操作都会在该字段上的值累加1,例外的人访问比较这两者的值,如果相等则更新,不相等就不更新.


在hibernate映射文件中在many-one标签中 添加一个属性 not-found="ignore"可以解决hibernate一个常见的异常,字段不存在的异常,(not-exits)


hibernate3.hibernateSystemException:null value was assigned to a property of primitive type setter of .....是数据库中某个字段没有值引起的异常,添加默认值即可解决
分享到:
评论

相关推荐

    Hibernate学习笔记

    001 Hibernate 简介(开源 O/R 映射框架) 002 第一个 Hibernate ...025 hibernate 悲观锁、乐观锁 026 hibernate 操作树形结构 027 hibernate 查询语言(HQL) 028 hibernate 缓存(性能优化策略) 029 hibernate 抓取策略

    hibernate学习笔记

    乐观锁(hibernate_optimistic) 32 HQL查询(hibernate_hql) 34 补充:SQL join连接 40 缓存 44 一级缓存 44 快取 45 hibernate二级缓存 47 Hibernate Gossip: 二级快取(Second-level) 48 hibernate查询缓存 50 ...

    精通 Hibernate:Java 对象持久化技术详解(第2版).part2

     21.5 利用Hibernate的版本控制来实现乐观锁  21.5.1 使用元素  21.5.2 使用元素  21.5.3 对游离对象进行版本检查  21.5.4 强制更新版本  21.6 实现乐观锁的其他方法  21.7 小结  21.8 思考题 第22章 管理...

    精通 Hibernate:Java 对象持久化技术详解(第2版).part4

     21.5 利用Hibernate的版本控制来实现乐观锁  21.5.1 使用元素  21.5.2 使用元素  21.5.3 对游离对象进行版本检查  21.5.4 强制更新版本  21.6 实现乐观锁的其他方法  21.7 小结  21.8 思考题 第22章 管理...

    精通 Hibernate:Java 对象持久化技术详解(第2版).part3

     21.5 利用Hibernate的版本控制来实现乐观锁  21.5.1 使用元素  21.5.2 使用元素  21.5.3 对游离对象进行版本检查  21.5.4 强制更新版本  21.6 实现乐观锁的其他方法  21.7 小结  21.8 思考题 第22章 管理...

    精通 Hibernate:Java 对象持久化技术详解(第2版).part1.rar

     21.5 利用Hibernate的版本控制来实现乐观锁  21.5.1 使用元素  21.5.2 使用元素  21.5.3 对游离对象进行版本检查  21.5.4 强制更新版本  21.6 实现乐观锁的其他方法  21.7 小结  21.8 思考题 第22章 管理...

    低清版 大型门户网站是这样炼成的.pdf

    4.2.4 hibernate的映射配置文件 201 4.2.5 体验hibernate(会员管理) 203 4.3 hibernate的映射机制 212 4.3.1 hibernate的基本映射数据类型 212 4.3.2 hibernate的主键映射 218 4.3.3 hibernate的实体映射 228...

    Grails 中文参考手册

    5.3.4 悲观锁和乐观锁 5.4 GORM查询 5.4.1 动态查找器 5.4.2 条件查询 5.4.3 Hibernate查询语言 5.5 高级GORM特性 5.5.1 事件和自动实现时间戳 5.5.2 自定义ORM映射 5.5.2.1 表名和列名 5.5.2.2 缓存策略 5.5.2.3 ...

    Java常见面试题208道.docx

    176.说一下乐观锁和悲观锁? 177.mysql 问题排查都有哪些手段? 178.如何做 mysql 的性能优化? 十八、Redis 179.redis 是什么?都有哪些使用场景? 180.redis 有哪些功能? 181.redis 和 memecache 有什么区别? ...

    Pro JPA 2 Mastering the Java Persistence API free down

    (JPA1.0 只允许从一个 unique 结果集中反回单个记录 ) ,指定 query 结果集的最大值,访问各个供应商的底层实体对象 manager 或 query ,最后就是加入悲观锁 (JPA1.0 只支持乐观锁 ) .  JPQL 也提供类似于 SQL...

    Hibernate开发指南

    24 XDoclet 与 Hibernate 映射...........................................................................24 数据检索 ......................................................................................

    jdbc基础和参考

    读取hibernate的配置文件和映射文件 3.构建SessionFactory对象 Transaction 1.事务管理对象 Query 1.查询对象,HQL Criteria 1.hibernate提供的更面向对象的一种查询方式。 准备工作: 1.java中的POJO对象存在...

    Java学习笔记-个人整理的

    {1.4.1}整数与浮点数}{23}{subsection.1.4.1} {1.4.1.1}浮点数原理}{24}{subsubsection.1.4.1.1} {1.4.2}格式化输出浮点数}{24}{subsection.1.4.2} {1.4.3}\texttt {char}}{24}{subsection.1.4.3} {1.4.4}转义...

Global site tag (gtag.js) - Google Analytics