使用Maven Hibernate5 之反向工程

來源:互聯網
上載者:User

標籤:

在實際開發中,一般都是表結構先設計好,再實現代碼,所以根據表結構產生資料庫實體類比較常見。說不如做,行動吧。

建立表


CREATE TABLE [dbo].[Classes](
[class_id] [int] IDENTITY(1,1) NOT NULL,
[name] [varchar](50) NULL,
[create_time] [datetime] NULL,
CONSTRAINT [PK_Classes] PRIMARY KEY CLUSTERED
(
[class_id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON

建立Console Configuration

New->選擇Console Configuration->Next:

檢查下Hibernate版本,項目,資料庫,設定檔。點確定後就是:

可能有些人沒有這個視圖,開啟Window->Show View->Other->Hibernate->Hibernate Configuration就可以看到那個視圖了。

建立反向工程設定檔

這個檔案也可以在啟動產生代碼的時候選擇建立。但是我還是先建立好放心些。

next

next

選擇console configuration,refresh,選擇要產生代碼的表。

至此hibernate.reveng.xml檔案已經建立,但是我們需要做些配置,預設的可能不太合適。

開啟reveng.xml檔案,切換到:

如果順利的話,點擊“Add”會彈出資料庫庫讓你選擇。如果有多個console configuration會先提示讓選擇一個。

可是可是我不順利啊,選擇了console configuration之後什麼反應都沒有。於是我開始各種折騰:

折騰1:修改console configuration的hibernate版本為5.0以下。居然可以產生代碼了,激動,可是代碼報錯。折騰2:升級eclipse版本,這個是我靈光一閃覺得可能是我的hibernate版本太高了,hibernate tools不支援,可是hibernate tools可是跟著eclipse走的。下載中。。。。下載了Mar2版本不可以安裝Jboss tools 4.4.0,下載了Neon版本,天啊嚕,看到Jboss tools 4.4.0了,心裡又是一陣激動。可惜安裝不成功,反覆了幾次,姐不幹了,準備第二天再試(ps:之前就碰到過當天安裝不成功的,改天就行了,懷疑網路問題)。第二天一早我就開始重新安裝Jboss tools,good,成功了,成功了,不僅安裝成功,也可以添加Tables,可以見證我的成功:

我又開始激動的準備產生代碼了。

看不到這個按鈕,沒關係,沒關係,從window->Perspetive開啟,如:

回到正題,開始配置運行產生代碼的相關配置:

Run起來,代碼出來了:

配置cfg.xml

代碼是產生了,跟資料庫的映射關係也有了,可是hibernate不知道對應檔在哪啊,有必要告訴一聲,修改cg.xml,添加下面配置,當然用工具添加更簡單:

<mapping resource="Classes.hbm.xml"/>

我把Classes.hbm.xml拉倒resources檔案下,所以跟cfg.xml是一個目錄,實際情況檔案在哪就配置相應的路徑即可。

修改LoginAction


public String execute() throws Exception {
Session ss = getSession();
ss.beginTransaction();
/*ss.save(PersonShana);
ss.getTransaction().commit();*/
Classes classes = new Classes();
classes.setName("語文");
classes.setCreateTime(new Date());
ss.save(classes);
ss.getTransaction().commit();
ss.close();
return "success";
}
static Session getSession() {
if (sessionFactory == null) {
final StandardServiceRegistry registry = new StandardServiceRegistryBuilder().configure().build();
sessionFactory = new MetadataSources(registry).buildMetadata().buildSessionFactory();
}
return sessionFactory.openSession();
}

運行

開啟http://localhost:8080/webtest/login

資料庫有資料啦。

demo

下載

使用Maven Hibernate5 之反向工程

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.