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

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

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

    Java, Only Java!

    統(tǒng)計

    留言簿(20)

    積分與排名

    好友空間

    文檔技巧

    閱讀排行榜

    評論排行榜

    Hibernate_Gossip學習筆記

    * 米小國 * 奇想世界☆.╯http://www.caterpillar.onlyfun.net/phpBB2/ 里面下載的“Hibernate Gossip - 簡介Hibernate”
    這個里面提供了Hibernate的基礎知識,步驟又是循序漸進,再把例子做完,估計對Hibernate應該有個比較初步的認識,并可以在項目中運用了。
    1 是本好書,入門看懂,例子做完,這是基本。而且,在使用Hibernate的過程中,還可以回過頭再看看入門,內(nèi)容組織得比較有層次感,只是因為是臺灣同胞寫的,讀起來不容易適應,因此對Hibernate有些熟悉后重讀,就可以屏蔽掉語言上的差異性,更多理解文章內(nèi)涵。
    × Hibernate是ORM(Object/Relational Mapping)的解決方案。
    × Hibernate所需要的類別庫
    × 提供JDBC連接

    2 繼承映射:父類與子類
    × 每個對象一張表,各自單獨映射。這樣映射方便,但是有重復數(shù)據(jù),不能多態(tài)操作。
    × 所有對象一張表,有個字段專門用于區(qū)別對象;
    × 每個對象一張表,共享主鍵,除主鍵外沒有重復數(shù)據(jù),子類屬性通過父類擴展查詢。

    3 集合映射:主要是提供這幾種方式下Hibernate如何處理,都是對象中嵌入對象。
    × Component映射、Set映射、List映射、Map映射
    × Set與Map排序:可以使用Java排序,也可以使用DB排序。
    × Component中集合映射:就是對象中有集合,集合中再存儲對象。
    × Hibernate對象的三種狀態(tài):暫存(Transient)、持久(Persistent)、分離(Detached)
    ?在Java中使用new創(chuàng)造的對象,就是暫存的,?暫存對象執(zhí)行save()或saveOrUpdate()就是持久的;
    ?持久對象總是與session和transaction相關(guān)聯(lián),持久對象執(zhí)行delete()就會回到暫存的;
    ?當session執(zhí)行close(), clear(), evict()之后,對象就會變成分離的。
    ?分離對象擁有id,執(zhí)行update(), saveOrUpdate(), lock()之后,對象就會重新變成持久的。
    × 對象的比較。==, equals(), hashCode()

    4 實體映射:(章節(jié)設計是否有問題。因為映射就是四種:一對一、一對多、多對一、多對多。其他重要功能:持久化、瀑布持久化、雙向關(guān)聯(lián)與inverse設定。)
    × 多對一映射?× 一對多映射?× 一對一映射?× 多對多映射
    × Cascade Persistent/瀑布持久化:父類持久化后,子類應自動持久化。
    ?Persistence of Reachability/可達性持久化
    × 雙向關(guān)聯(lián)與inverse設定,這個是接著Cascade Persistence來說明的。與多對一映射和一對多映射的區(qū)別是可以自動更新子類。
    × 延遲初始(Lazy Initialization)。真正需要時才向數(shù)據(jù)庫索取數(shù)據(jù)。但是在處理加載的代碼中間不能關(guān)閉Session,否則發(fā)生LazyInitializationException。

    5 Session 與 Criteria
    × Session管理:
    ?Session是Hibernate的核心,負責對象的生命周期、事務管理、數(shù)據(jù)庫存取。
    ?Session由SessionFactory創(chuàng)建,SessionFactory是線程案例的,但是Session不是,因此不能共用。
    ?為了提高使用效率,提供了一個共用Session的例子,采用ThreadLocal實現(xiàn)供參考。
    × Criteria查詢:
    ?可以不使用SQL或者HQL,而采用完全基于Java的語法風格來進行數(shù)據(jù)查詢;
    ?但是,Criteria現(xiàn)在只能提供許多基本的功能。
    6 事務管理
    × 事務管理:
    ?JDBC事務。用Connection管理事務,Hibernate對JDBC事務做了簡單封裝。
    ?JTA事務。使用JTA容器來管理事務,與Session無關(guān)。

    × 悲觀鎖定(Pessimistic Locking):依賴系統(tǒng)或者數(shù)據(jù)庫本身的機制完成。

    × 樂觀鎖定(Optimistic Locking):由Hibernate完成,并且為Hibernate推薦方式,增加了VERSION列。

    7 相關(guān)工具
    × SchemaExportTask:從映射文件建立數(shù)據(jù)庫表
    × Hbm2JavaTask:從映射文件建立Java Bean類。

    posted on 2007-06-19 09:39 zYx.Tom 閱讀(1266) 評論(2)  編輯  收藏 所屬分類: 3.開源項目

    評論

    # re: Hibernate_Gossip學習筆記[未登錄] 2008-08-13 15:22 Jade

    《Spring技術(shù)手冊》的作者寫的,對初學者很好,作者把繁體版轉(zhuǎn)成了簡體版也放在網(wǎng)站上,只不過術(shù)語沒有改變而已。http://www.caterpillar.onlyfun.net/gossip  回復  更多評論   

    # re: Hibernate_Gossip學習筆記[未登錄] 2008-08-13 15:24 Jade

    http://caterpillar.onlyfun.net/Gossip/index.html  回復  更多評論   


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


    網(wǎng)站導航:
     
    主站蜘蛛池模板: 国产一级淫片a免费播放口| 人碰人碰人成人免费视频| 99re在线这里只有精品免费| 亚洲一区二区三区偷拍女厕| 国产人成网在线播放VA免费| 亚洲区小说区图片区QVOD| 免费黄网站在线看| 7777久久亚洲中文字幕蜜桃| 男女做羞羞的事视频免费观看无遮挡| 亚洲另类小说图片| 国产国产成年年人免费看片| 日本在线观看免费高清| 亚洲毛片αv无线播放一区| 久久中文字幕免费视频| 亚洲人成人77777在线播放| 午夜视频在线观看免费完整版 | 亚洲av专区无码观看精品天堂| 久久99九九国产免费看小说| 亚洲AV无码国产一区二区三区| 亚洲精品黄色视频在线观看免费资源| 亚洲免费视频一区二区三区| 亚洲成熟xxxxx电影| 最近最新的免费中文字幕| 免费精品国自产拍在线播放| 久久被窝电影亚洲爽爽爽| 亚洲免费视频观看| 国产区图片区小说区亚洲区| 亚洲精品无码MV在线观看| 国产成人福利免费视频| 黄色免费网址大全| 亚洲av色福利天堂| 免费高清小黄站在线观看| 中国极品美軳免费观看| 国产亚洲中文日本不卡二区| 亚洲无码黄色网址| 国内精品乱码卡1卡2卡3免费| 猫咪免费人成网站在线观看入口| 无码专区—VA亚洲V天堂| 日本一区免费电影| 污视频在线观看免费| 国产亚洲精品美女久久久久久下载|