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

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

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

    itVincent Blog - Java Working Fun!

    技術引領時代!
    posts - 117, comments - 181, trackbacks - 0, articles - 12

    OneToOne lazy loading不生效的問題

    Posted on 2008-11-04 13:38 itVincent 閱讀(2055) 評論(0)  編輯  收藏

    最近項目中遇到了個hibernate lazy延遲加載的問題,實體關系如下A,B
    public class A  {
        @OneToOne(fetch=FetchType.LAZY,mappedBy = "a")
        B b;
    }

    public class B  {
        @OneToOne(fetch=FetchType.LAZY)
        @JoinColumn(name = "A_ID_FK")
        A a;
    }
    情況是:取A的對象時,就算設置了lazy,結果還是eager馬上獲取的, hibernate打印出的也是多了一條SQL語句;
    但當取B的對象時,設置了的lazy就生效了,只有一條SQL語句

    查了不少資料,在robin的文章中找到這樣的話:"先來說說Hibernate吧。Hibernate確實功能強悍,但是Hibernate不夠易用,而且有一些明顯的缺陷:one-to-one必須通過bytecode enhancement才能lazy loading",這里說出OneToOne存在這樣的缺陷,然而所說的bytecode enhancement不是很清楚什么意思,猜測是用cglib進行一些對象的動態改變.

    在論壇中找到這樣的一段解釋:
    Does lazy loading of one-to-one associations work? Lazy loading for
    one-to-one associations is sometimes confusing for new Hibernate users.
    If you consider one-to-one associations based on shared primary keys
    (chapter 7, section 7.1.1, “Shared primary key associations”), an association
    can be proxied only if it’s constrained="true". For example, an
    Address always has a reference to a User. If this association is nullable
    and optional, Hibernate first would have to hit the database to find out
    whether a proxy or a null should be applied—the purpose of lazy loading
    is to not hit the database at all. You can enable lazy loading through
    bytecode instrumentation and interception, which we’ll discuss later.


    綜上的原因得出兩種解決方法:
    1.將OneToOne改為OneToMany,但幾點是改變了實體關系,對已有代碼也有存在影響
    2.將OneToOne的主控方設在你需要lazy loading的實體那里,但兩個都需要lazy loading呢

    You can enable lazy loading through
    bytecode instrumentation and interception, which we’ll discuss later.
    對這句話還要繼續尋找答案


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 69天堂人成无码麻豆免费视频| 大地影院MV在线观看视频免费| 日韩免费精品视频| 亚洲精品熟女国产| 黄色免费网站网址| 亚洲综合激情视频| 99精品国产免费久久久久久下载| 亚洲成a人片在线网站| 四虎永久在线精品免费观看视频| 亚洲综合激情另类小说区| 1000部无遮挡拍拍拍免费视频观看| 亚洲视频在线一区二区三区| AV无码免费永久在线观看| 亚洲制服丝袜精品久久| 成人人观看的免费毛片| 香蕉视频免费在线| 亚洲妇熟XXXX妇色黄| 国产h肉在线视频免费观看| 亚洲人成毛片线播放| 情侣视频精品免费的国产| 无人视频在线观看免费播放影院 | 国产精品免费看香蕉| 一个人看的免费视频www在线高清动漫 | 日韩a级毛片免费观看| 一区二区在线免费视频| 久久综合九九亚洲一区| 中文字幕人成无码免费视频| 亚洲av综合日韩| 久久精品国产亚洲综合色| 无码国产精品一区二区免费| 亚洲av日韩aⅴ无码色老头| 奇米影视亚洲春色| 国产香蕉免费精品视频| 国产成人综合亚洲一区| 亚洲AV日韩AV天堂久久| 国产精品免费_区二区三区观看| 黄色短视频免费看| 激情综合亚洲色婷婷五月APP| 免费人成在线观看视频播放| 无码人妻一区二区三区免费n鬼沢| 亚洲中文无码mv|