<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    事務處理:
    Hibernate本身并不具備事務管理能力。在事務管理層,Hibernate將其委托給底層的JDBC或者JTA,以實現事務的管理與調度。

    基于JDBC的事務:
    無疑是最簡單的實現方式,
    session = sessionFactory.openSession();
    Transaction tx = session.beginTransaction();
    tx.commit();

    基于JTA的事務管理:
    hibernate默認采用JDBC Transacion。可以通過配置文件指定采用JTA作為事務管理實現。
    <hibernate-configuration>
    ??? <session-factory>
    ??????? ......
    ??????? <property name="hibernate.transaction.factory_class">
    ??org.hibernate.transaction.JTATransactionFactory
    ??????? </property>
    ??? </session-factory>
    </hibernate-configuration>

    鎖(locking)
    支持兩種鎖:悲觀鎖和樂觀鎖

    悲觀鎖(Pessimistic locking):
    數據庫的實現
    select * from account where name='yyy' for update
    通過for update子句,這條語句鎖定所有符合條件的記錄,在本次事務提交之前,外界無法修改這些記錄。

    hibernate的實現,也是基于數據庫的鎖機制實現:
    加鎖一般通過以下方法實現:
    Criteria.setLockMode
    Query.setLockMode
    Session.lock

    hibernate的加鎖模式:
    LockMode.NONE:無鎖機制
    LockMode.WRITE:hibernate在Insert和update時,會自動獲取
    LockMode.READ:hibernate在讀取記錄的時候,會自動獲取
    以上3種,由hibernate內部使用。

    LockMode.UPGRADE:利用數據庫的for update子句加鎖
    LockMode.UPGRADE_NOWAIT:oracle特定實現,利用oracle的for update nowait子句實現加鎖。

    樂觀鎖(Optimistic locking):
    hibernate在其數據訪問引擎中內置了樂觀鎖實現。可以通過class描述符的optimistic-lock屬性結合version描述符指定。

    <hibernate-mapping>
    ??? <class
    ??????? name="org.hibernate.sample.TUser"
    ??????? table="t_user"
    ??????? dynamic-update="true"
    ??????? dynamic-insert="true"
    ??????? optimistic-lock="version"
    ??? >
    ???? <id>......
    ???? </id>
    ????? <version
    ???????? column="version"
    ???????? name="version"
    ???????? type="java.lang.Integer"
    ????? />
    ??? </class>
    </hibernate-mapping>
    注意,version節點要在ID節點之后。
    這里,聲明了一個version屬性,用于存放用戶的版本信息,保存在T_User表的version字段中。

    posted on 2006-07-16 10:18 knowhow 閱讀(1334) 評論(0)  編輯  收藏 所屬分類: ORM:Hibernate及其他
    主站蜘蛛池模板: 亚洲AV无码无限在线观看不卡 | 最近免费mv在线电影| 国产精品亚洲不卡一区二区三区| 亚洲成av人在线观看网站| 在线观看免费大黄网站| 亚洲精品无播放器在线播放 | 久久精品亚洲日本佐佐木明希| 中文字幕免费在线视频| 亚洲成色在线综合网站| 免费人妻无码不卡中文字幕系| 亚洲国产精品网站久久| 毛片a级三毛片免费播放| 国产精品久久久久久亚洲影视 | 中文字幕在线观看亚洲日韩| 好男人视频在线观看免费看片 | 国产一区二区三区亚洲综合| 四只虎免费永久观看| a级黄色毛片免费播放视频| 亚洲电影中文字幕| 野花高清在线电影观看免费视频| 亚洲人成网站免费播放| 亚洲精品99久久久久中文字幕 | 国产精品1024在线永久免费| 亚洲ⅴ国产v天堂a无码二区| 麻豆一区二区免费播放网站| 亚洲欧好州第一的日产suv| 亚洲精品国产精品国自产观看| 叮咚影视在线观看免费完整版| 亚洲免费电影网站| 亚洲国产成人精品女人久久久| 日本免费在线中文字幕| 亚洲人成色777777精品| 国产日产亚洲系列| 国产h视频在线观看免费| 一级毛片免费全部播放| a级毛片免费观看在线| 久久久影院亚洲精品| 无码国模国产在线观看免费| 在线观看免费视频一区| 亚洲乱码一区av春药高潮| 亚洲第一成人影院|