自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Hibernate經(jīng)驗(yàn)簡(jiǎn)單描述

開發(fā) 后端
本文主要是分享我的一些Hibernate經(jīng)驗(yàn),在最終的學(xué)習(xí)和實(shí)踐中,我發(fā)現(xiàn)我還是學(xué)到了許多重要的東西,但是我認(rèn)為我已經(jīng)非常漂亮的應(yīng)用了Hibernate/JPA的一些思想。

Hibernate有很多值得學(xué)習(xí)的地方,這里我們主要介紹我的一些Hibernate經(jīng)驗(yàn),包括介紹避免使用工具來(lái)自動(dòng)生成你的模型等方面。

大約一年以前,我為了學(xué)習(xí)一些Hibernate經(jīng)驗(yàn),因此我參加了一個(gè)Hibernate項(xiàng)目。從那時(shí)起,我一直在使用Hibernate框架下的JPA(Java持久API)實(shí)現(xiàn),使用的思想仍就是一樣的。那個(gè)項(xiàng)目使用了一個(gè)數(shù)據(jù)庫(kù),這個(gè)數(shù)據(jù)庫(kù)規(guī)模有些大,略顯落后,并且還被許多的應(yīng)用程序共用。為了盡快加入到項(xiàng)目中,我開始學(xué)習(xí)一些Hibernate知識(shí)。從書本上的例子開始學(xué)習(xí),感覺很簡(jiǎn)單,學(xué)起來(lái)也很快,但是發(fā)現(xiàn)從零開始開發(fā)一個(gè)項(xiàng)目,并且控制它又是另外一回事了。試著在一個(gè)大型,復(fù)雜,被許多應(yīng)用程序共用的數(shù)據(jù)庫(kù)上使用Hibernate就又完全不同了。弄清楚了我可能遭遇到的技術(shù)難點(diǎn),我開始想別的招了,要盡快從另外的方向開始,克服困難。

在最終的學(xué)習(xí)和實(shí)踐中,我發(fā)現(xiàn)我還是學(xué)到了許多重要的東西,雖然我們的項(xiàng)目還沒(méi)有完全做完,但是我認(rèn)為我目前已經(jīng)非常漂亮的應(yīng)用了Hibernate/JPA的一些思想。現(xiàn)在我需要重新思考反省我所學(xué)到的東西,如下便是我學(xué)到的一些Hibernate知識(shí):

1.避免使用工具來(lái)自動(dòng)生成你的模型

沒(méi)錯(cuò),這些工具的使用可以節(jié)約時(shí)間(雖然我們發(fā)現(xiàn)了Dali有一個(gè)很嚴(yán)重的bug,但是我們還是使用它),但是***你不得不重新做很多的事情。其實(shí)手動(dòng)也花費(fèi)不了你很多的時(shí)間,當(dāng)你親自做的時(shí)候,這可以讓你有機(jī)會(huì)熟悉那些數(shù)據(jù)。

2.盡量多的使用命名查詢語(yǔ)句(NamedQueries)

雖然很容易寫查詢語(yǔ)句,但是在許多的情況下,使用NamedQueries會(huì)更好,這會(huì)有助于你完成兩件事情:
◆它能更加重用,因?yàn)楸幻牟樵冋Z(yǔ)句通常在代碼的重要地方。
◆你的查詢語(yǔ)句在開始的時(shí)候就是正確的,那么在查詢語(yǔ)句中的錯(cuò)誤更加容易發(fā)現(xiàn)。

要習(xí)慣這樣做需要花一些時(shí)間,但是這么做是值得的。

3.預(yù)期管理

對(duì)于任何一種框架、技術(shù)、甚至觀念來(lái)說(shuō),這是非常重要的,要銘記在心。由于某些原因,人們傾向于專注某一個(gè)特征,這些特征實(shí)際上或許不存在,或許被夸大。有時(shí)它很小,很容易理解(舉個(gè)例子,理解一些實(shí)際的工作,需要在Hibernate中映射),有時(shí)我也不知道他們是如何管理實(shí)現(xiàn)一些概念(如Hibernate是如何管理計(jì)劃修正的)。無(wú)論如何,找到預(yù)期目標(biāo)是什么,然后管理它們是非常重要的。如果你的團(tuán)隊(duì)認(rèn)為Hibernate會(huì)使得數(shù)據(jù)庫(kù)管理員沒(méi)有用處,把他們解雇,那么你將會(huì)有一個(gè)潛在的問(wèn)題存在。

4.使用富域模型(rich domain modeling)

我所遇到的一件很悲哀的事情,就是在域?qū)ο髢H僅是一個(gè)簡(jiǎn)單的數(shù)據(jù)容器的時(shí)候,我要使用Hibernate,而像Hibernate這樣的工具讓我們以面向?qū)ο蟮姆绞絹?lái)使用數(shù)據(jù)。簡(jiǎn)單的映射數(shù)據(jù)只是讓我們停留在中途。當(dāng)我本能的想到使用富域模型(rich domain modeling)的時(shí)候,我發(fā)現(xiàn)我們可以重用很多的代碼,我們的其它層變得不那么混亂了,并且我們的代碼更加容易測(cè)試。以上是分享我的Hibernate經(jīng)驗(yàn)。

【編輯推薦】

  1. Hibernate可行性全面概括
  2. Hibernate Sequence基礎(chǔ)描述
  3. 淺析Hibernate使用EhCache
  4. Hibernate的一級(jí)Cache
  5. Hibernate update淺談
責(zé)任編輯:佚名 來(lái)源: 博客園
相關(guān)推薦

2009-09-22 12:45:00

Hibernate性能

2009-09-28 15:43:42

Hibernate O

2009-09-23 10:58:32

Hibernate T

2009-09-27 13:00:56

Hibernate S

2009-09-24 13:17:37

Hibernate類庫(kù)

2009-09-21 13:56:09

Hibernate3.

2009-09-25 10:33:25

Hibernate單元

2009-09-27 17:37:32

Hibernate攔截

2009-09-27 17:05:02

Hibernate p

2009-09-23 17:34:18

Hibernate映射

2009-09-21 16:30:20

Hibernate S

2009-09-22 17:41:07

Hibernate性能

2009-09-29 16:48:42

Hibernate J

2009-09-28 10:05:27

Hibernate基礎(chǔ)

2009-09-23 10:49:08

Hibernate D

2009-09-22 10:46:00

Hibernate項(xiàng)目

2009-09-23 10:23:03

Hibernate檢查

2009-09-21 17:46:34

Hibernate持久

2009-09-29 10:57:25

設(shè)置Hibernate

2009-09-22 15:04:37

Hibernate M
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)