2010-10-22 39 views
7

我剛開始閱讀Sun的JDBC教程。我安裝了MySQL連接器/ J,然後瀏覽了它的菜單,然後看到這條語句:Spring,Hibernate,JDBC之間的關係

「雖然JDBC本身很有用,但我們希望如果您不熟悉JDBC,那麼在閱讀前幾節你可以避免使用裸露的JDBC來處理所有問題,除了最瑣碎的問題之外,還可以考慮使用諸如Hibernate,Spring的JDBC模板或Ibatis SQL Maps等流行的持久化框架之一來完成大部分重複性工作和更重的提升有時需要使用JDBC「

那麼Spring,Hibernate和JDBC之間的關係是什麼?聲明說「避免使用裸露的JDBC」意味着什麼?

感謝,

薩拉

+0

另一個相關的問題:http://stackoverflow.com/questions/2723228/不同之處 - hibernate-and-other-frameworks之間的相似性 - 或者 – 2010-10-22 01:24:14

回答

17

如果您使用Hibernate,Spring的JDBC模板或Ibatis SQL Maps,那麼您仍然使用JDBC,但不必直接處理它。他們正在爲您提供幫助,並在一定程度上使您免於使用JDBC的一些困難。

Hibernateobject-relational-mapping框架。

MyBatis,以前稱爲iBatis,是一個數據映射框架。

Spring是一個範圍廣泛的Web框架組件,並且包含允許與JDBC,Hibernate或iBatis集成的模板子系統,並且抽象出處理它們中的任何一個的一些細節。

你應該確實學習JDBC,但也(最終)學習其他一些,並嘗試避免直接使用JDBC來處理任何非常複雜的事情。

這些想法也是(特別是Hibernate)與Java Persistence API (JPA)密切相關,這也是值得學習的。你可能也想看看Java Data Objects (JDO)。儘管如此,不要試圖一次全部學習這一切。

從JDBC開始是一個好主意。保持不變。

+4

*「從JDBC開始是一個好主意,保持不變。」* +1(其餘也是) – 2010-10-22 01:25:53

+0

謝謝。愛你的答案,因爲你也指出了除了信息之外的學習方向。 – sarahTheButterFly 2010-10-22 01:51:54

2

「避免使用裸JDBC」 - 不要直接使用JDBC API。

Hibernate - 數據庫持久性框架。它允許您將Java對象存儲在數據庫中。相當漂亮。

Spring - 它實際上是一個web開發框架。我認爲,JDBC模板是JDBC的抽象。

+0

Spring在2016年不僅僅是一個「web開發框架」(在我發佈這個問題六年後發表評論,希望你不要心智):P – sarahTheButterFly 2016-09-04 23:28:31

3

字母表>單詞>單句。

這就是我們如何學習(自然)的語言。

同樣,我看到:

JDBC API > JDBC API使用連接池>春天JDBC模板> ORM/JPA/JDO