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

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

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

    posts - 6,  comments - 3,  trackbacks - 0

    這篇文件整理了一些我改寫Hibernate筆記時,從Hibernate 2Hibernate 3中所遇過的不同點,如果發現有其它重要的改變,將隨時新增至這個文件中。

    DTD 文件的引用


    hibernate.cfg.xml
    中對DTD文件的引用必須改變,在Hibernate 2中是這樣:

    ...
    <!DOCTYPE hibernate-configuration
        PUBLIC
    "-//Hibernate/Hibernate Configuration DTD//EN"
        "http://hibernate.sourceforge.net/hibernate-configuration-2.0.dtd"
    >
    ...


    Hibernate 3中必須這樣:

    ...
    <!DOCTYPE hibernate-configuration PUBLIC
       
    "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
        "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd"
    >
    ...



    映射文件在Hibernate 2時是這樣:

    ...
    <!DOCTYPE hibernate-mapping
        PUBLIC
    "-//Hibernate/Hibernate Mapping DTD//EN"
        "http://hibernate.sourceforge.net/hibernate-mapping-2.0.dtd"
    >
    ...


    Hibernate 3中是這樣:

    ...
    <!DOCTYPE hibernate-mapping
        PUBLIC
    "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
        "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"
    >
    ...

     

    package 的改變


    Hibernate 2
    API的頂層package名稱是net.sf.hibernate,在Hibernate 3中是org.hibernate,例如Hibernate 2中的net.sf.hibernate.SessionFactoryHibernate 3中改為org.hibernate.SessionFactory

    取消 Session find()iterate() 方法


    Session
    中的find()方法被取消了,必須使用SessioncreateQuery()建立Query實例,並使用list()方法來取代。Sessioniterate()被取消了,由Query介面上的iterator()來取代,詳請看 Query.list()iterator()

    HQL 新增語句


    新增 update 語句

    Query query = session.createQuery("update User set age=30 where id=1");
    query.executeUpdate();


    新增 delete 語句

    Query query = session.createQuery("delete User where age<20");
    query.executeUpdate();

    自定義 insertupdatedelete


    Hibernate 3
    的映射文件中新增了<sql-insert><sql-update><sql-delete>三個標籤,您可以在這三個標籤中使用SQL自定義您的INSERTUPDATEDELETE,也就是儲存、更新、刪除資料時的行為,詳請看 自定義 insertupdatedelete

    其它

    • Expression類別雖仍可使用,但新增Restrictions類別作為Expression類別的替代。
    • 新增 DetchedCriteria
    • 新增 動態模型(Dynamic Model
    • HibernateException 變為Checked exception
    • Interceptor 新增了幾個方法。
    • Lazy Initialization預設為 true,不想使用的話,必須在映射文件中設定lazy屬性為false
    • 可透過org.hibernate.tool.instrument.InstrumentTask.class檔進行buildtime bytecode instrumentation,實現屬性的Lazy Initialization

     原文出自:http://www.caterpillar.onlyfun.net/Gossip/HibernateGossip/Hibernate2ToHibernate3.html

    posted on 2005-08-23 14:39 Java&Inter 閱讀(441) 評論(0)  編輯  收藏 所屬分類: Hibernate技術

    <2025年5月>
    27282930123
    45678910
    11121314151617
    18192021222324
    25262728293031
    1234567

    常用鏈接

    留言簿(1)

    隨筆分類(3)

    隨筆檔案(6)

    文章分類(24)

    文章檔案(22)

    收藏夾(2)

    經常去的Blog

    • Eclipse/GEF
    • 關于Eclipse插件(plugins)開發的心得,主要包括:SWT/JFACE/GEF/EMF/RCP

    搜索

    •  

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 免费在线黄色网址| 日本特黄a级高清免费大片| 亚洲人成影院在线无码按摩店| 免费观看国产小粉嫩喷水| 亚洲日韩AV一区二区三区中文| 天堂亚洲免费视频| 久久久久亚洲AV综合波多野结衣 | 亚洲综合国产一区二区三区| 亚洲老熟女@TubeumTV| 成人免费视频69| 亚洲粉嫩美白在线| 免费v片在线观看无遮挡| 亚洲精品无码久久久久久久 | 亚洲精品久久无码| 国产成人免费a在线视频色戒| 亚洲福利视频一区二区三区| 国产99久久久久久免费看| 男人的好免费观看在线视频| 久久精品国产亚洲av成人| 222www在线观看免费| 国产人成亚洲第一网站在线播放| 国产va在线观看免费| 亚洲大香伊人蕉在人依线| 四虎影视免费在线| 一出一进一爽一粗一大视频免费的| 成人毛片18女人毛片免费96 | 亚洲国产精品专区| 精品视频在线免费观看| 亚洲成AV人片久久| 99精品热线在线观看免费视频| 亚洲午夜精品久久久久久浪潮| 自拍偷自拍亚洲精品偷一| 亚洲日韩aⅴ在线视频| 久久受www免费人成_看片中文| 亚洲视频小说图片| 成全视频在线观看免费高清动漫视频下载 | 国产精品永久免费视频| 浮力影院第一页小视频国产在线观看免费 | 亚洲国产成人91精品| 国产jizzjizz免费视频| 亚洲精品无码专区在线播放|