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

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

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

    That way I want to stay

    BlogJava 首頁(yè) 新隨筆 聯(lián)系 聚合 管理
      55 Posts :: 1 Stories :: 41 Comments :: 0 Trackbacks

    Propagation behavior:

    PROPAGATION_MANDATORY:
     Indicates that the method must run within a transaction. If no
     existing transaction is in progress, an exception will be thrown.


    PROPAGATION_NESTED:
     Indicates that the method should be run within a nested transaction
     if an existing transaction is in progress. The nested transaction
     can be committed and rolled back individually from the enclosing
     transaction. If no enclosing transaction exists, behaves like
    PROPAGATION_REQUIRED:
     Beware that vendor support for this propagation behavior is spotty at best.
     Consult the documentation for your resource  manager to determine if nested
     transactions are supported.
    PROPAGATION_NEVER:
     Indicates that the current method should not run within a transactional
     context. If there is an existing transaction in progress, an
     exception will be thrown.
    PROPAGATION_NOT_SUPPORTED:
     Indicates that the method should not run within a transaction. If an
     existing transaction is in progress, it will be suspended for the
     duration of the method. If using JTATransactionManager,
     access to TransactionManager is required.
    PROPAGATION_REQUIRED:
     Indicates that the current method must run within a transaction. If
     an existing transaction is in progress, the method will run within
     that transaction. Otherwise, a new transaction will be started.
    PROPAGATION_REQUIRES_NEW:
     Indicates that the current method must run within its own transaction.
     A new transaction is started and if an existing transaction is in
     progress, it will be suspended for the duration of the method. If
     using JTATransactionManager, access to Transaction-
     Manager is required.
    PROPAGATION_SUPPORTS:
     Indicates that the current method does not require a transactional
     context, but may run within a transaction if one is already in
     progress.


    Isolation levels:
    In a typical application, multiple transactions run concurrently, often working
    with the same data to get their job done. Concurrency, while necessary, can lead
    to the following problems:
     ■ Dirty read—Dirty reads occur when one transaction reads data that has
     been written but not yet committed by another transaction. If the
     changes are later rolled back, the data obtained by the first transaction
     will be invalid.
     ■ Nonrepeatable read—Nonrepeatable reads happen when a transaction performs
     the same query two or more times and each time the data is different.
     This is usually due to another concurrent transaction updating the
     data between the queries.
     ■ Phantom reads—Phantom reads are similar to nonrepeatable reads. These
     occur when a transaction (T1) reads several rows, then a concurrent transaction
     (T2) inserts rows. Upon subsequent queries, the first transaction
     (T1) finds additional rows that were not there before.


    Isolation level:
    ISOLATION_DEFAULT:
     Use the default isolation level of the underlying datastore.
    ISOLATION_READ_UNCOMMITTED:
     Allows you to read changes that have not yet been committed. May
     result in dirty reads, phantom reads, and nonrepeatable reads.
    ISOLATION_READ_COMMITTED:
     Allows reads from concurrent transactions that have been committed.
     Dirty reads are prevented, but phantom and nonrepeatable
     reads may still occur.
    ISOLATION_REPEATABLE_READ:
     Multiple reads of the same field will yield the same results, unless
     changed by the transaction itself. Dirty reads and nonrepeatable
     reads are prevented by phantom reads may still occur.
    ISOLATION_SERIALIZABLE:
     This fully ACID-compliant isolation level ensures that dirty reads,
     nonrepeatable reads, and phantom reads are all prevented. This is
     the slowest of all isolation levels because it is typically accomplished
     by doing full table locks on the tables involved in the transaction. 


    文章來(lái)源:http://blog.csdn.net/Wingel/archive/2006/11/26/1414826.aspx
    posted on 2006-11-29 11:21 Wingel 閱讀(212) 評(píng)論(0)  編輯  收藏

    只有注冊(cè)用戶(hù)登錄后才能發(fā)表評(píng)論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 九九久久国产精品免费热6| 你是我的城池营垒免费观看完整版| 亚洲成年人啊啊aa在线观看| a视频在线免费观看| 亚洲国产片在线观看| 国产一区视频在线免费观看| 人妻在线日韩免费视频| 亚洲天堂2016| 最新精品亚洲成a人在线观看| 国产精品爱啪在线线免费观看| 狼人大香伊蕉国产WWW亚洲| 久久综合日韩亚洲精品色| 精品国产免费观看| 久久久国产精品福利免费| 亚洲丰满熟女一区二区哦| 亚洲精品无码永久在线观看你懂的 | 久久久久亚洲精品日久生情| 免费看www视频| 久久伊人免费视频| 婷婷国产偷v国产偷v亚洲| 亚洲视频一区网站| 亚洲日韩在线中文字幕第一页 | 欧洲亚洲国产清在高| 我想看一级毛片免费的| 国产在线观看免费视频软件| 亚洲av永久无码精品网址| 亚洲视频一区在线观看| 亚洲综合无码AV一区二区| 免费无码又爽又刺激高潮的视频 | 亚洲爆乳成av人在线视菜奈实| 亚洲精品国产成人专区| 国产成人精品123区免费视频| 亚洲一区免费观看| 九九热久久免费视频| 国产精品亚洲а∨天堂2021| 亚洲色图古典武侠| 亚洲高清国产拍精品26U| 免费大片黄手机在线观看| 无码永久免费AV网站| 67pao强力打造高清免费| a级黄色毛片免费播放视频|