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

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

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

    posts - 176, comments - 240, trackbacks - 0, articles - 7

    Hibernate動(dòng)態(tài)化

    Posted on 2006-07-23 21:13 canonical 閱讀(5085) 評(píng)論(8)  編輯  收藏 所屬分類: 軟件開(kāi)發(fā)
    ? hibernate的應(yīng)用中一般總是將entity映射為強(qiáng)類型的java類,這為程序操縱帶來(lái)很多便利,同時(shí)可以將大量動(dòng)態(tài)過(guò)程隱蔽在對(duì)象包絡(luò)之下。映射為java類的一個(gè)主要問(wèn)題在于無(wú)法在程序運(yùn)行時(shí)刻對(duì)于程序進(jìn)行修改,而數(shù)據(jù)結(jié)構(gòu)的局部修改幾乎是無(wú)法避免的。hibernate3本身支持動(dòng)態(tài)數(shù)據(jù)模型,它允許我們把entity映射為Map數(shù)據(jù)類型, 當(dāng)數(shù)據(jù)結(jié)構(gòu)發(fā)生變化的時(shí)候, 只需要修改hbm文件即可改變映射模型,而不需要修改java實(shí)體類代碼.?
    ? ? 在hbm定義文件中,如果我們不指定name屬性,而是指定entity-name屬性,則我們可以將entity映射為Map, 而不是一個(gè)java實(shí)體類.
    ? <class
    ??? entity-name="test.DynamicEntity"
    ??? table="DYNAMIC_ENTITY"
    ? >...</class>
    ? 此外, 也可以選擇將部分字段動(dòng)態(tài)映射到Map
    ? <class ...>
    ??? <dynamic-component name="dynamicAttributes">
    ????? <property name="foo" column="FOO"/>
    ????? <property name="bar" column="BAR"/>
    ??? </dynamic-component>
    ? </class>
    在HQL語(yǔ)句中可以直接使用o.dynamicAttributes.foo來(lái)訪問(wèn)foo屬性,所有操作與普通屬性相同。
    ? 為了實(shí)現(xiàn)hiberante映射模型的動(dòng)態(tài)更新,我們首先需要實(shí)現(xiàn)sessionFactory的動(dòng)態(tài)更新。目前hibernate的實(shí)現(xiàn)只允許從hbm文件重建sessionFactory, 即新建一個(gè)sessionFactory替換原有的sessionFactory, 在使用spring的情況下,這需要對(duì)org.springframework.orm.hibernate3.LocalSessionFactoryBean進(jìn)行小小的hack。
    ? 為了將動(dòng)態(tài)屬性和普通屬性同樣對(duì)待,要求在操作實(shí)體對(duì)象屬性的時(shí)候需要能夠自動(dòng)處理nested property, 即需要如下類似的方法:entityDao.getProperty(entity,"dynamicAttributes.foo"), entityDao.setProperty(entity,"dynamicAttributes.foo", attrValue).
    ? 為了使得應(yīng)用程序自動(dòng)處理新增屬性,要求程序是meta驅(qū)動(dòng)的:當(dāng)實(shí)體對(duì)象增加了一個(gè)屬性時(shí),只需要修改meta文件,即可完成對(duì)于該屬性的增刪改查匯總等普通應(yīng)用需求。

    Feedback

    # re: Hibernate動(dòng)態(tài)化  回復(fù)  更多評(píng)論   

    2006-09-16 22:24 by 曹曉鋼
    嘿嘿,和我想的事情素一模一樣的亞!

    # re: Hibernate動(dòng)態(tài)化  回復(fù)  更多評(píng)論   

    2006-09-18 00:30 by canonical
    嗯,我們對(duì)hiberante作了一些擴(kuò)展,包括支持公式字段,附件上傳字段等

    # re: Hibernate動(dòng)態(tài)化  回復(fù)  更多評(píng)論   

    2006-10-11 15:05 by jiaoly
    有個(gè)問(wèn)題:使用 Map,能夠?qū)崿F(xiàn) lazy load 嗎

    # re: Hibernate動(dòng)態(tài)化  回復(fù)  更多評(píng)論   

    2007-11-09 15:17 by aiai
    能再詳細(xì)點(diǎn)該有多好啊 唉~

    # re: Hibernate動(dòng)態(tài)化  回復(fù)  更多評(píng)論   

    2008-03-17 20:17 by yeti20011
    <hibernate-mapping>
    <class name="hib.TtItem" table="TT_ITEM" schema="SCOTT">
    <id name="id" type="java.lang.Long">
    <column name="ID" precision="22" />
    <generator class="increment" />
    </id>
    <property name="name" type="java.lang.String">
    <column name="NAME" length="80" />
    </property>
    <joined-subclass entity-name="Ttbook">
    <key column="aid" />
    <property name="ttt" type="java.lang.String"></property>
    </joined-subclass>
    </class>
    </hibernate-mapping>
    有沒(méi)有試驗(yàn)過(guò)這樣的配置文件

    # re: Hibernate動(dòng)態(tài)化  回復(fù)  更多評(píng)論   

    2008-03-17 20:17 by yeti20011
    我的email:yeti20022@hotmail.com

    # re: Hibernate動(dòng)態(tài)化  回復(fù)  更多評(píng)論   

    2010-08-02 16:11 by 技術(shù)學(xué)習(xí)
    能詳細(xì)點(diǎn)嗎,能舉個(gè)列子在spring+hibernate 中動(dòng)態(tài)化具體實(shí)現(xiàn)過(guò)程

    # re: Hibernate動(dòng)態(tài)化[未登錄](méi)  回復(fù)  更多評(píng)論   

    2010-08-19 14:45 by Java
    能舉個(gè)例子在spring+hibernate中動(dòng)態(tài)化的列子嗎?
    主站蜘蛛池模板: 亚洲午夜电影在线观看| 在线aⅴ亚洲中文字幕| 中文字幕免费在线看线人 | 亚洲砖码砖专无区2023| 女性无套免费网站在线看| 亚洲成a人片在线不卡一二三区| 成人免费视频观看无遮挡| 国产在线a不卡免费视频| 国产在线国偷精品免费看| 伊人久久免费视频| 亚洲国产成人久久笫一页| 亚洲AV香蕉一区区二区三区| 毛色毛片免费观看| 美女裸体无遮挡免费视频网站| 亚洲乱码日产精品a级毛片久久| 日本视频免费高清一本18| 亚洲av无码成人精品国产| 久久久亚洲精品国产| 国产成人综合久久精品免费| 午夜精品免费在线观看| 暖暖免费中文在线日本| 亚洲人色大成年网站在线观看| 国产精品xxxx国产喷水亚洲国产精品无码久久一区 | 国产成人免费手机在线观看视频| 一区二区免费视频| 一区二区在线免费视频| 亚洲性线免费观看视频成熟| 国产av天堂亚洲国产av天堂| 亚洲AV伊人久久青青草原| 在线观看免费人成视频色9| 美女视频黄a视频全免费网站色窝| 蜜臀亚洲AV无码精品国产午夜.| 亚洲人成激情在线播放| 亚洲第一福利网站| 亚洲成Av人片乱码色午夜| 亚洲国产综合久久天堂| 亚洲AV蜜桃永久无码精品| 国产成人免费一区二区三区| 好爽好紧好大的免费视频国产 | a国产成人免费视频| 国产一级黄片儿免费看|