輕松

          記述我學(xué)習(xí)java的里程

          常用鏈接

          統(tǒng)計(jì)

          積分與排名

          友情鏈接

          最新評(píng)論

          eclipse中從數(shù)據(jù)庫(kù)生成hibernate實(shí)體類

                  為什么寫(xiě)這篇BLOG,是因?yàn)榻?jīng)常有同事或網(wǎng)友問(wèn)起我hiberante實(shí)體類的生成問(wèn)題。所以下次再有人問(wèn)我可以省一堆的話了,其實(shí)這個(gè)真的是很簡(jiǎn)單。
                  現(xiàn)在hibernate在項(xiàng)目中的應(yīng)用是越來(lái)過(guò)廣泛了。我是從hibernate開(kāi)始支持注釋語(yǔ)法后才開(kāi)始研究它的。說(shuō)實(shí)在的,原來(lái)的hibernate生成的一堆堆的XML文件看著就頭暈,還不如自己寫(xiě)的SQL語(yǔ)句來(lái)的舒服,所以一直聽(tīng)朋友和同事介紹,可自己一直不屑用之。
                  可是現(xiàn)在有福了hibernate是JPA最常用的實(shí)現(xiàn)之一,而且hiberante自身也對(duì)注釋語(yǔ)法進(jìn)行了支持。現(xiàn)在再不用去看那一堆堆的XML映射了。而且eclipse還提供了從數(shù)據(jù)庫(kù)直接生成Entity Class的工具。既然可以少寫(xiě)或不寫(xiě)SQL語(yǔ)句那合樂(lè)而為為呢。廢話少說(shuō),開(kāi)始做起來(lái)。

                  還是從我們開(kāi)始項(xiàng)目的第一步說(shuō)起,新建項(xiàng)目。一般我們用java做web項(xiàng)目都是File->New->Dynamic Web Project,如下圖:

          然后會(huì)出現(xiàn)新建項(xiàng)目的對(duì)話框如圖所示

          然后點(diǎn)擊Modify按鈕后如圖

          將java persistence選中,這樣就為項(xiàng)目增加了JPA的特性,其它特性根據(jù)項(xiàng)目需要自行修改。點(diǎn)擊OK后。點(diǎn)擊幾次NEXT(忽略的幾步根據(jù)自身情況而定)到JPA FACET窗口,如下圖:


          因?yàn)樵蹅冇玫氖莌ibernate列表中沒(méi)有所以platform選擇Generic,Type選擇disable library configuration,因?yàn)樵蹅儼研枰膉ar文件直接放到WEB-INF下的lib目錄中就可以了。所以不用配置。再下面的connection這個(gè)是必須要配置的要不我們?cè)趺磸臄?shù)據(jù)庫(kù)中生成啊。對(duì)不。
          如果以前配置過(guò)連接直接選擇就可以了,如果沒(méi)有配置過(guò)點(diǎn)擊 add connection.如下圖:

          選擇要使用的數(shù)據(jù)庫(kù)類型,然后下一步,如下圖。其實(shí)這個(gè)類型也沒(méi)啥作用只是個(gè)生成連接字符串的模版而以。

          選擇已有的驅(qū)動(dòng),如果沒(méi)有怎么辦,廢話,當(dāng)然是繼續(xù)新增了。這塊不詳述了,點(diǎn)擊driver后面第一個(gè)按鈕,根據(jù)提示選擇對(duì)應(yīng)的jar文件即可。
          做完上述操作點(diǎn)擊Finish.回到JPA Facet窗口。選中Discover annotated classes automatically,把Create orm.xml釣掉。然后點(diǎn)Finish項(xiàng)目就建完了。
          然后在項(xiàng)目文件夾上右鍵選擇JPA tools->Generate Entities from Tables.后如下圖:

          選擇建好的connection如果沒(méi)有connect 就connect一下。就會(huì)如上圖所示了(有時(shí)eclipse會(huì)有些小問(wèn)題看不見(jiàn)表,可以重啟一下試試,實(shí)在不行就直接建個(gè)JPA project ,生成實(shí)體后再拷到自己的項(xiàng)目中就可以了。)選中要生成實(shí)體的表,Next如下圖:

          上面是表之間的關(guān)系,如果可以做相應(yīng)的修改(用的是ecipse 3.5貌似eclipse3.4還沒(méi)這個(gè)功能,eclipse越來(lái)越強(qiáng)了),再Next后如下圖:

          (這個(gè)好像也是eclipse 3.5才加的)都能看明白吧。按照需要改改就可以了,這里不多啰嗦。再Next
          后,如下圖:

          這是一些表的每個(gè)屬性的調(diào)整,一般也不用調(diào)了。Finish就好了。
          嘿嘿終于完成了。貼了這么多圖,累死我了。不過(guò)為了大家能弄明白,還是圖比文字更能說(shuō)明情況,我辛苦點(diǎn)就辛苦點(diǎn)吧。。
          看看源碼中生成的java文件是不是你想要的,具體這些類怎么用。就不是這篇文章要說(shuō)的問(wèn)題了。如果大家有需要,我下回接著寫(xiě)。

          posted on 2009-07-27 14:16 輕松 閱讀(17451) 評(píng)論(4)  編輯  收藏 所屬分類: Hibernate

          評(píng)論

          # re: eclipse中從數(shù)據(jù)庫(kù)生成hibernate實(shí)體類 2009-07-27 15:08 wuzhongxing

          eclipse3.5  回復(fù)  更多評(píng)論   

          # re: eclipse中從數(shù)據(jù)庫(kù)生成hibernate實(shí)體類 2009-07-27 19:19 海邊沫沫

          收藏,這正是我要的東西。  回復(fù)  更多評(píng)論   

          # re: eclipse中從數(shù)據(jù)庫(kù)生成hibernate實(shí)體類 2009-07-27 20:58 yangphere

          不錯(cuò),學(xué)習(xí)了  回復(fù)  更多評(píng)論   

          # re: eclipse中從數(shù)據(jù)庫(kù)生成hibernate實(shí)體類[未登錄](méi) 2013-08-09 11:05 c

          有圖有真相  回復(fù)  更多評(píng)論   

          主站蜘蛛池模板: 海阳市| 宕昌县| 千阳县| 屏南县| 潞城市| 资阳市| 高尔夫| 娱乐| 长春市| 宁武县| 吉木乃县| 屏山县| 仙居县| 棋牌| 博爱县| 邢台市| 新泰市| 平罗县| 无棣县| 容城县| 金寨县| 纳雍县| 山东| 巴林右旗| 淮安市| 监利县| 安塞县| 固原市| 旅游| 昌黎县| 枣强县| 华阴市| 通渭县| 北海市| 澄迈县| 沂源县| 新密市| 清河县| 镇康县| 宁波市| 马边|