【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拭目以待。