Hibernate創始人Gavin King:冬眠的數據
原創【51CTO獨家特稿】Gavin King,Hibernate的創始人,EJB專家委員會成員,JBoss核心開發人員;目前,Gavin就職于RebHat,負責JBoss Hibernate和CMP引擎的開發。他的傳奇是,在開發Hibernate這個Java領域最流行的數據持久化框架之前只是一名普通Java程序員,那時,他對SQL和數據庫一竅不通。
Gavin King開發Hibernate的主要動機是當時的EJB CMP太過繁瑣。那是2001年,Gavin King就職于澳大利亞悉尼的一家J2EE軟件開發和咨詢公司Cirrus Technologies。
Gavin發現在當時的項目開發中,他總要花很多時間處理Entity Bean的體系架構,這個工作步驟繁冗,結構復雜;而真正的軟件核心業務邏輯卻很少有時間顧及。他計劃搞出一套比Entity Bean更好的方案,幫助所有J2EE的開發人員擺脫CMP的困擾。
Gavin King經常進行關于Hibernate的課程和演講
他首先將這個想法告訴了自己的老板,Gavin抱怨EJB Entity Bean 1.1的架構復雜,CMP給自己過多的限制。而Cirrus的老板卻認為EJB是這個行業的標準,也是當前最流行的技術;他認為,數學系畢業的Gavin還沒適應EJB的開發模式,熟悉之后,這樣的抱怨會少很多。
但Gavin堅持自己的想法,他希望可以開發出一套簡潔的對象關系映射解決方案;同時,他也很清楚,自己從沒用SQL開發過任何東西,之前也很少接觸數據庫方面的東西。這看似是一個不可能完成的任務。但Gavin King堅持這樣做。
#T#對于開發Hibernate,Gavin做的第一件事是去書店買了本SQL基礎的書。Cirrus的老板做夢也沒想到,兩年之后,Gavin真的開發出他說的那個東西,并快速成為全世界最流行的對象關系映射工具,成為當時Java數據持久層的最佳解決方案。而那個對SQL和數據庫一竅不通的小伙子居然會成為全世界Java企業級數據庫解決方案的領導者。
這就是Gavin King,一個充滿激情、敢想敢做的人。
2003年,Gaving的Java對象關系映射框架Hibernate誕生了。這是一個開放源代碼的對象關系映射框架,它對JDBC進行了非常輕量級的對象封裝,使得Java程序員可以隨心所欲的使用對象編程思維來操縱數據庫。 Hibernate可以應用在任何使用JDBC的場合,既可以在Java的客戶端程序使用,也可以在Servlet/JSP的Web應用中使用,最具革命意義的是,Hibernate可以在應用EJB的J2EE架構中取代CMP,完成數據持久化的重任。Gavin King給這個框架一個形象的名字,Hibernate(冬眠);他對自己的框架有充分的自信,使用Hibernate,你的數據持久層會像冬眠一樣聽話。
2003年9月,Gavin King在他的網站上向全世界的Java開發者發起挑戰:誰能用一段Java JDBC代碼開發的效率做到比Hibernate高,他將給予那個人100美元。這更像是一條高明的招聘啟示;幾個月后,Gavin King和幾個獲獎者加入了JBoss組織,專注于Hibernate的開發和服務。目前,Gavin King在RedHat負責JBoss Hibernate和機遇CMP引擎的新版Hibernate開發。
成名后的Gavin King夢想依舊。目前,作為EJB3.0專家委員會成員,Gavin King在進行基于JSF/EJB 3的快速開發框架JBoss Seam的研發;JBoss Seam同樣是一個目標遠大的框架,Gavin試圖將JBoss Seam打造成一種基于JSF+EJB的快速開發框架,是和ROR與JF類似的框架。
基于對Hibernate的好感,讓我們對JBoss Seam拭目以待。