首頁 > 網際網路

一個簡單的hibernate+mysql的範例java/jsp開發

2019-12-11 06:39:28

這是一個很簡單的hibernate範例,不用關注資料庫設計方面,適合初學者。僅僅是入門hibernate的使用,本人弄了一天才搞清楚整個過程,所以為了使初學者不要花太多時間,就能理清hibernate的使用就寫了這篇實踐文章。

1

步驟一:安裝jdk、myeclipse6.5(這裡不介紹了)

2

步驟二:新建一個web專案,圖下圖一


3

步驟三:在mysql資料庫中新建資料庫名stms和表person,並增加幾行資料到表中如圖二

注意:這裡的id資料型別是varchar(45),為了不讓大家受到int型別的限制。特意用的varchar(45)為主鍵,而且不是自增的


4

步驟四:開啟資料庫檢視

依次選擇 :視窗|顯示檢視|其他|選擇DB Browser,彈出如下圖三

說明:在這裡可以視覺化的檢視和運算元據庫和表


5

選擇DB Browser點選ok,如下圖四

注意:這裡是我以前建的2個資料庫連線,我們不使用(右擊空白處可以新建)


6

說明:新建資料庫連線的時候,會用到mysql的驅動包,所有先加入mysql的驅動包,再新建連線,載入mysql驅動包到web-inf/lib目錄下,如下圖五


7

步驟五:新建資料庫連線

在DB Browser空白處右擊,點選新建,彈出如下對話方塊,如圖六

說明:

Driver name表示連線名(可以隨便命名)

Driver JARs下面增加了mysql驅動包,只有增加驅動包,下面的Driver classname才有選項。

其他,你懂的,就不說了。


8

點選:下一步,增加我們要使用的資料庫,如圖七


9

點選:完成。建好後,如下圖八


10

步驟六:右擊新建好的mysqlhibernate連線,點選開啟連線,如圖九

(這裡是用來自動生成永久性類的java檔案的,後面會在這裡操作)


11

步驟七:在專案中設定hibernate

點選選單欄的Myeclipse | Project capabilities  | add Hibernate Capabilities,彈出如下對話方塊,如圖十


12

按上圖選擇,點選:下一步,彈出下圖十一


13

上面選擇我們開始新建的資料庫連線,如上圖填寫,點選:下一步,彈出如下對話方塊,如下圖十二


14

如上圖所選,點選:完成。

說明:如果彈出如下對話方塊,如圖十三 

就選擇Keep Existing吧,沒有彈出就不用管。


15

這樣就已經自動生成了hibernate的設定檔案,在src目錄下可以找到,如下圖十四


16

步驟八:現在使用hibernate自動生成永久類的java檔案

在src目錄下新建bean包(用來存自動生成的永久類java檔案),如下圖十五


17

在DB Browser下,右鍵我們新建的person表,選擇Hibernate Reverse Engineering,彈出如下對話方塊,如圖十六


18

選擇:下一步,彈出如下對話方塊,如圖十七


19

選擇:下一步,如下圖十八


20

點選:完成,

現在在bean包下面是不是有2個檔案了,一個Person.ava檔案,一個Person.hbm.xml設定檔案

同時,看看hibernate.cfg.xml檔案中是不是有Person.hbm.xml的對映;如下圖十九

這樣就設定要了hibernate到資料庫的連結,我們就可以通過操作Person.hbm.xml這個檔案中的表Person(注意大寫字母),來運算元據庫的person表(這裡小寫字母)了


21

步驟九:現在我們測試使用hibernate運算元據庫

我們這測試hibernate能不能使用,具體用來做開發就不講了

新建一個op包,在op包下新建test.java類檔案(我們只建一個測試類,)如圖二十


22

test.java程式碼如下??//測試的是讀取資料庫中的記錄(所以資料庫中必須有資料,自己增加資料哦)package?op;import?util.*;import?java.util.Iterator;import?java.util.List;?import?org.hibernate.HibernateException;import?org.hibernate.Session;import?org.hibernate.Transaction;import?org.hibernate.SessionFactory;import?org.hibernate.cfg.Configuration;?import?be
an.Person;?public?class?test?{Session?session?=?null;Transaction?tx?=?null;public?static?void?main(String[]?args)?{try?{SessionFactory?sf=new?Configuration().configure().buildSessionFactory();Session?session=sf.openSession();List?catlist?=?null;catlist?=?session.createQuery("from?Person").list();Transaction?tx=session.beginTransaction();if?(catlist?!=?null)?{Iterator?it?=?catlist.iterator();while?(it.hasNext())?{Person?person?=?(Person)?it.next();System.out.println("姓名:"?+?person.getName()?+?"?性別:"+?person.getSex()+"n");}}tx.commit();session.clear();}?catch?(HibernateException?e)?{//?TODO:?handle?exceptione.printStackTrace();}?}}
g[]?args)?{try?{SessionFactory?sf=new?Configuration().configure().buildSessionFactory();Session?session=sf.openSession();List?catlist?=?null;catlist?=?session.createQuery("from?Person").list();Transaction?tx=session.beginTransaction();if?(catlist?!=?null)?{Iterator?it?=?catlist.iterator();while?(it.hasNext())?{Person?person?=?(Person)?it.next();System.out.println("姓名:"?+?person.getName()?+?"?性別:"+?person.getSex()+"n");}}tx.commit();session.clear();}?catch?(HibernateException?e)?{//?TODO:?handle?exceptione.printStackTrace();}?}}

23

開啟test.java,執行方式:java應用程式執行,你就可以讀取到person中記錄了(person表中必須有資料啊)

24

總結:這樣我們就通過使用hibernate讀取了資料庫中所有person記錄要對資料庫進行增加,刪除,修改,就只要修改查詢語句就ok了

IT145.com E-mail:sddin#qq.com