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

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

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

    Sealyu

    --- 博客已遷移至: http://www.sealyu.com/blog

      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
      618 隨筆 :: 87 文章 :: 225 評論 :: 0 Trackbacks
    最近在項目中遇到一個奇怪的問題,在使用Hibernate攔截器捕獲實體變化并進行處理時,發現其中的onFlushDirty()函數執行了很多次,導致進行處理時產生很多重復數據。具體問題如下:
    使用一個類繼承Hibernate的EmptyInterceptor類來對程序中的實體變化進行攔截,并在其中的onFlushDirty()函數中對捕獲的數據進行處理,產生對應的event數據并保存到數據庫中。 例如:
    public class EventInterceptor extends EmptyInterceptor {
    public boolean onFlushDirty(
            Object entity,
            Serializable id,
            Object[] currentState,
            Object[] previousState,
            String[] propertyNames,
            Type[] types ) throws CallbackException {

            if(isAuditable(entity)){//如果該實體需要被記錄,生成對應的event。
                //此處生成對應的event。
            }
            return false;
        }

    在程序執行后,發現對應一條實體的變化生成了多條重復的event記錄,非常不解。
    后來google發現,有人也碰到過對應的問題,并在Hibernage論壇中提出過這個問題,鑒定為Hibernate的一個小Bug。
    (原文地址:http://forum.hibernate.org/viewtopic.php?t=940410&highlight=interceptor+onflushdirty)
    解決方法如下:
    將FlushMode改為:FlushMode.COMMIT
    或者也可以提前進行flush()
    都可以解決這個問題。

    posted on 2008-05-09 15:59 seal 閱讀(2487) 評論(1)  編輯  收藏 所屬分類: HibernateEJB

    評論

    # re: Interceptor 中onFlushDirty()函數執行多次的問題(Hibernate 的一個小Bug) 2008-05-09 19:34 優書齋
    優書齋提供大量計算機書籍下載
    同時歡迎有時間的英語還不錯的朋友加入我們的翻譯團隊
    http://ushuzhai.cn  回復  更多評論
      

    主站蜘蛛池模板: 亚洲a一级免费视频| 色拍自拍亚洲综合图区| 国产成人免费视频| 免费很黄无遮挡的视频毛片| 激情亚洲一区国产精品| 亚洲处破女AV日韩精品| 亚洲色成人网站WWW永久| 亚洲精品视频免费| 亚洲精品偷拍视频免费观看| 日日操夜夜操免费视频| 日韩人妻无码免费视频一区二区三区| 18禁美女黄网站色大片免费观看| 99视频免费在线观看| 日本免费A级毛一片| 99精品免费观看| 99久久这里只精品国产免费| 2019中文字幕免费电影在线播放| 99久久人妻精品免费一区| **毛片免费观看久久精品| 99久久久国产精品免费蜜臀| 成人黄色免费网址| 国产视频精品免费| 久久久久亚洲AV成人无码网站 | AV激情亚洲男人的天堂国语| 欧美亚洲精品一区二区| 一级毛片免费播放试看60分钟| 永久免费精品影视网站| 十九岁在线观看免费完整版电影| 99久热只有精品视频免费看| 最近最好的中文字幕2019免费| 亚洲精品成人区在线观看| 亚洲黄色网址在线观看| 免费亚洲视频在线观看| 99在线观看免费视频| 免费一级毛片在级播放| 亚洲理论片在线观看| 中文毛片无遮挡高清免费| 毛片在线免费视频| 香蕉视频在线观看亚洲| 美女扒开尿口给男人爽免费视频 | 久久亚洲国产成人影院|