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

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

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

    隨筆 - 175  文章 - 202  trackbacks - 0
    <2008年3月>
    2425262728291
    2345678
    9101112131415
    16171819202122
    23242526272829
    303112345

    第一個Blog,記錄哈哈的生活

    常用鏈接

    留言簿(16)

    隨筆分類

    隨筆檔案

    文章分類

    文章檔案

    收藏夾

    Java links

    搜索

    •  

    最新評論

    閱讀排行榜

    評論排行榜

    batch_size 即同時提交數據的數量,原本與事務并沒有什么關系,但如果涉及到同一張表數據的同一種操作,可能就會發生微妙的關系了。

    場景如下:
    場景一:使用 spring 控制事務,將方法事務配置為 not_supported,向同一張表中插入兩條數據,保證第一條數據正常插入,而第二條數據受約束(如唯一約束)插入失敗。

    預測結果:第一條數據成功,第二條失敗。
    實際結果:兩條數據均失敗。
    原因:hibernate 將兩條插入放到了同一個 batch 中,提交同時失敗了。

    場景二:同樣使用 spring 控制事務,將方法事務配置為 not_supported,向第一張表中插入一條合法數據,成功,向第二張表插入數據,受約束(如唯一約束)插入失敗。

    預測結果:第一條數據成功,第二條失敗。
    實際結果:第一條數據成功,第二條失敗。
    原因:hibernate 分別插入數據并提交,在無事務的情況下,第一條成功,第二條失敗。

    那么如何讓場景一得到預測結果呢,一個簡單的解決方法,將 hibernate.jdbc.batch_size 設置為 1,即可。

    所以,即使控制了事務,也未必能夠得到期望的結果,還需要考慮某些特殊的場景帶來的影響。
    posted on 2008-03-06 14:18 哈哈的日子 閱讀(1830) 評論(2)  編輯  收藏 所屬分類: Java

    FeedBack:
    # re: Hibernate 的 batch_size 與事務[未登錄] 2008-03-06 22:55 Doublej
    是不是加上:
    <property name="jdbc.batch_size">1</property>
    我特意試了下.好像還是兩條都不成功...  回復  更多評論
      
    # re: Hibernate 的 batch_size 與事務 2008-03-07 11:15 哈哈的日子
    試一下 hibernate.jdbc.batch_size,看看事務配置,我這邊沒問題。  回復  更多評論
      
    主站蜘蛛池模板: 成年在线网站免费观看无广告| 一级做a爰全过程免费视频| 免费无码又黄又爽又刺激| 亚洲一区二区三区高清| a级午夜毛片免费一区二区| 亚洲一区二区三区自拍公司| jizz免费观看视频| 亚洲中文字幕在线第六区| 51午夜精品免费视频| 亚洲自偷自偷偷色无码中文| 三级黄色片免费看| 久久久久亚洲Av片无码v| 久久亚洲免费视频| 亚洲国产视频一区| 久草在视频免费福利| 久久精品国产亚洲av麻豆图片 | 中文在线观看永久免费| 亚洲欧洲日产国码无码网站| 两个人看www免费视频| 亚洲av无码无在线观看红杏| 精品一区二区三区无码免费视频 | 亚洲日本va在线观看| 最近最新的免费中文字幕| 欧洲亚洲国产精华液| 亚洲精品97久久中文字幕无码| 国产福利免费视频| 亚洲国产综合精品中文第一区| 91精品免费在线观看| 亚洲va中文字幕| 中文字幕亚洲专区| 69影院毛片免费观看视频在线| 亚洲av片不卡无码久久| 免费一看一级毛片全播放| 精品无码国产污污污免费网站国产| 亚洲AV综合色一区二区三区| 2021久久精品免费观看| 老妇激情毛片免费| 亚洲欧洲国产经精品香蕉网| 成人免费视频国产| 日本xxxx色视频在线观看免费| 亚洲中文字幕一区精品自拍|