<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)航:
     
    主站蜘蛛池模板: 91免费资源网站入口| 亚洲视频在线观看免费| 国产大片免费观看中文字幕| 亚洲av无码国产综合专区 | 亚在线观看免费视频入口| 久久99亚洲综合精品首页| 久久免费香蕉视频| 国产AV无码专区亚洲AV男同| 中出五十路免费视频| 亚洲av无码一区二区三区乱子伦| 大地资源在线资源免费观看| 亚洲av永久无码精品秋霞电影影院 | 亚洲国产午夜中文字幕精品黄网站 | jiz zz在亚洲| 日本免费一二区在线电影| 蜜臀亚洲AV无码精品国产午夜.| 免费国产a国产片高清网站| 一级女性全黄生活片免费看| 久久精品国产69国产精品亚洲| 久久精品免费观看国产| 亚洲国产成人手机在线电影bd| a级毛片无码免费真人| 亚洲av成人一区二区三区观看在线| 亚洲国产精品专区在线观看| 国产在线观看无码免费视频| 91亚洲国产在人线播放午夜| 无码一区二区三区免费视频| 免费观看又污又黄在线观看| 亚洲精品制服丝袜四区| 1024免费福利永久观看网站| 色噜噜的亚洲男人的天堂| 亚洲午夜无码久久久久| 国产曰批免费视频播放免费s | 亚洲第一综合天堂另类专| 亚洲一区二区三区在线视频| 最近免费视频中文字幕大全| 国产精品手机在线亚洲| 亚洲激情在线观看| 国产乱弄免费视频| 99精品热线在线观看免费视频| 亚洲AV无码成人精品区狼人影院|