偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

Hibernate專業(yè)知識介紹

開發(fā) 后端
這里介紹Hibernate專業(yè)知識,包括讓數(shù)據(jù)庫做自己擅長的工作、分解數(shù)據(jù)庫和密切注意數(shù)據(jù)庫觸發(fā)器有如下兩個原因。

Hibernate有很多值得學習的地方,這里我們主要介紹Hibernate專業(yè)知識,包括介紹Hibernate/JPA的一些思想等方面。

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

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

1.讓數(shù)據(jù)庫做自己擅長的工作

我們想有一個好的,清晰的數(shù)據(jù)模型,因此我們不惜任何代價寫一些額外的查詢語句來獲取對象相關數(shù)據(jù),要么使用存儲過程,要么使用函數(shù)。這是做法是錯誤的,數(shù)據(jù)庫優(yōu)勢在于存儲,而不是保持Hibernate創(chuàng)建或讀寫的數(shù)據(jù)。舉個例子,我們有一個對象,與之相關聯(lián)的有一個狀態(tài)。這個狀態(tài)在整個應用程序中都要用到,因此,它毫無疑問是要執(zhí)行的,但是,我們不想每次都要單獨的寫一個查詢語句。這個問題在于,這個狀態(tài)是從一些統(tǒng)計計算中派生出來的,并且這些統(tǒng)計計算需要用到一對多的關系。每次從加載的對象中讀取數(shù)據(jù)的代價是非常高的。后來跟我們其中的一位數(shù)據(jù)庫管理員交流了一下,發(fā)現(xiàn)一個我們可以使用的sql函數(shù)能夠很快的獲得該狀態(tài)。我們使用@Formula來映射成一個狀態(tài)屬性,就能得到我們所需要的所有東西。這仍就是域模型的一部分,但是執(zhí)行起來非常好。有時像這樣的一個折衷的辦法能夠起到很大的效果。

2.分解數(shù)據(jù)庫

在一開始,我就想在Hibernate中模型化整個數(shù)據(jù)庫。結(jié)果發(fā)現(xiàn)這是不切實際的,原因如下:
◆這是一項巨大的工程,并且要花費幾周的時間,而用戶根本看不到你做了什么實際的工作。
◆我不可能在第一次就把它弄好,后繼的開發(fā)者無論如何都會修改它們的。

現(xiàn)在有一個趨勢,就是希望在開始之前,將所有的事情都進行映射,但是,當時你開始這么做后,你不需在這上面花很多的時間。我后來發(fā)現(xiàn)一個好的辦法,就是將數(shù)據(jù)庫分解,工作的時候一塊一塊的進行,發(fā)現(xiàn)這很有幫助。

3.密切注意觸發(fā)器

密切注意數(shù)據(jù)庫觸發(fā)器有如下兩個原因:
◆在后臺觸發(fā)器很隱蔽的執(zhí)行了一些功能,讓你很是疑惑,不知道發(fā)生了什么。
◆當你在Hibernate端需要復制一些東西的時候,觸發(fā)器會做一些手腳。之前我們好幾次沒有認識到這個教訓,導致我們丟失了很多數(shù)據(jù),這些都是由觸發(fā)器引起的,這幾乎讓我們很是郁悶。以上總結(jié)我的一些Hibernate專業(yè)知識。

【編輯推薦】

  1. Hibernate可行性全面概括
  2. Hibernate Sequence基礎描述
  3. 淺析Hibernate使用EhCache
  4. Hibernate的一級Cache
  5. Hibernate update淺談
責任編輯:佚名 來源: Sina
相關推薦

2011-06-09 13:58:25

程序員

2018-03-26 15:02:21

人工智能應用領域專業(yè)知識

2025-04-28 07:20:00

IT技能科技行業(yè)AI

2009-04-15 18:23:00

2011-01-28 09:22:06

2020-09-14 18:42:47

物聯(lián)網(wǎng)

2009-03-16 09:16:56

柳傳志復出IT專業(yè)知識

2009-09-23 17:41:05

Hibernate事務

2009-09-25 09:46:03

Hibernate s

2009-09-28 10:24:58

Hibernate基礎

2009-06-17 11:18:02

Hibernate延遲

2009-09-22 09:27:29

Hibernate P

2009-09-28 13:49:44

Hibernate Q

2009-09-27 14:41:05

Hibernate I

2009-09-25 13:55:05

Hibernate使用

2009-06-25 16:52:34

2009-09-21 14:50:01

Hibernate部署

2009-09-24 10:13:05

Hibernate版本

2009-06-12 16:00:13

Session方法Hibernate

2009-09-27 10:10:47

Hibernate處理
點贊
收藏

51CTO技術棧公眾號