`

Hibernate transaction

阅读更多

 

(captured from a very good Hibernate Book, copyright belongs to the author)

 

First type lost

First transaction’s rollback overwrite second transaction’s update on same record

 

Second type lost

First transaction’s commit overwrite second transaction’s update on the same record

 

Dirty Read

Read uncommitted data

 

Phantom Read

Second read get extra record

 

Non-repeatable read

Two read return’s different result.

 (All above issues is due to someone did something in the middle of a transaction, I hate being interupted)

 

If one session has exception, need close it, not resue again.

  

Database Lock types

share

exclusive

update

 

Database lock applied ranges

1. database

2. table

3. area

5. page

6. record

...

 

 Transaction optimize

1. short transaction

2. reduce the transaction isolation level if consistency is not strict

 

Database Lock

1. Optimistic lock

  • Version field goes after the definition of ID
  • timestamp can also do the job
  • version is better than timestamp, because system only check to second, actually transaction might happen within 1 second.

2. Pessmistic lock

  • application lock through database exclusive lock
  • database add extra column as locker

 

  • 描述: transaction1
  • 大小: 13.2 KB
分享到:
评论

相关推荐

    Could not roll back Hibernate transaction.doc

    Could not roll back Hibernate transaction; nested exception is org.hibernate.TransactionException: JDBC rollback failed 这表明Hibernate事务回滚操作失败,导致事务不能正确回滚。 二、问题原因 该问题的...

    Hibernate+Transaction+myeclipse6+事例+工程源码.rar

    介绍Hibernate+Transaction+myeclipse6+事例的应用参考工程源码.

    spring-hibernate-maven-transaction整合

    spring-hibernate-maven-transaction整合

    软件依赖包(Spring AOP+Hibernate Transaction)

    该软件依赖包,为实例spring aop实现Hinernate事务操作软件包

    Hibernate_Session_Transaction

    可以对hibernate的 Session 和 Transaction 有更深入的认识 希望对一些概念比较模糊的人 有帮助

    HibernateSession , Transaction 研究

    NULL 博文链接:https://stewchicken.iteye.com/blog/938875

    Hibernate学习笔记和资料

    hibernate概述,hibernate入门Demo,hibernate配置文件详解(全局配置,实体类映射配置),配置实体规则,核心API详解(Configuration,sessionFactory,session,Transaction),hibernate中的对象状态以及刷新能缓存机制 ...

    Hibernate Web应用的开发步骤

    Hibernate Web应用的开发一般经过以下几个步骤: (1)创建数据库。 (2)将Hibernate所需的JAR包复制到WEB-...(8)通过创建的Transaction实例进行事务管理。 (9)通过创建的Query或Criteria实例实现数据库的查询。

    Hibernate所需jar包

    antlr-2.7.7 c3p0-0.9.2.1 dom4j-1.6.1 hibernate-c3p0-4.3.5.Final hibernate-commons-annotations-...jboss-transaction-api_1.2_spec-1.0.0.Final mchange-commons-java-0.2.3.4 mysql-connector-java-5.1.30-bin

    基于dubbo和hibernate的例子

    基于dubbo和hibernate的分层例子,并有一个dubbo client模拟消费者

    Hibernate稳定版(hibernate-release-5.2.18.Final.zip)

    Hibernate稳定版(hibernate-release-5.2.18.Final.zip),Hibernate ORM 是一个为应用程序、库和框架提供对象/关系映射 (ORM) 支持的库。它还提供了 JPA 规范的实现,这是 ORM 的标准 Java 规范。

    hibernate4.3完整jar包

    Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java...Hibernate的核心接口一共有6个,分别为:Session、SessionFactory、Transaction、Query、Criteria和Configuration。

    Hibernate体系结构的概要图

    Hibernate的核心接口一共有6个,分别为:Session、SessionFactory、Transaction、Query、Criteria和Configuration。这6个核心接口在任何开发中都会用到。通过这些接口,不仅可以对持久化对象进行存取,还能够进行事务...

    Beginning Hibernate: For Hibernate 5

    The book keeps its focus on Hibernate without wasting time on nonessential third-party tools, so you’ll be able to immediately start building transaction-based engines and applications. Experienced ...

    hibernate.properties

    #hibernate.transaction.manager_lookup_class org.hibernate.transaction.WebSphereTransactionManagerLookup #hibernate.transaction.manager_lookup_class org.hibernate.transaction....

    hibernate 4 核心依赖包(hibernate lib required)

    jboss-transaction-api_1.1_spec-1.0.1.Final jboss-logging-3.1.0.GA javassist-3.18.1-GA javassist-3.18.1-GA hibernate-core-4.2.21.Final hibernate-commons-annotations-4.0.2.Final dom4j-1.6.1 antlr-2.7.7

    hibernate基础jar包

    hibernate基础jar包。包含junit,antlr,don4j,hibernate-commons-annotations,hibernate-core,hibernate-jpa-api,javassit,jboss-logging,jboss-transaction-api

    Hibernate更新某些字段

    session.beginTransaction(); Teacher t = (Teacher) session.get(Teacher.class, 3); t.setName("yangtb2"); session.update(t); session.getTransaction().commit(); } } ``` 然而,Hibernate 生成的 SQL ...

    最新Hibernate jar 架包(9个)

    jta.jar 当使用JTA规范时,必须加入,JTA全称是 Java Transaction API (java 事务 API),一般情况下也是必须的. slf4j-api-1.6.1.jar 这个包是必须的,因为在Hibernate的核心包中多处用到了,比如Configuration.class中用...

    Beginning.Hibernate.For.Hibernate.5.4th.Edition

    The book keeps its focus on Hibernate without wasting time on nonessential third-party tools, so you’ll be able to immediately start building transaction-based engines and applications. Experienced ...

Global site tag (gtag.js) - Google Analytics