本页使用了标题或全文手工转换

Hibernate

维基百科,自由的百科全书
跳到导航 跳到搜索
Hibernate
開發者红帽公司
目前版本
  • 5.1.0 (2016年2月10日;穩定版本)
  • 5.2.1 (2016年6月30日;穩定版本)[1]
  • 5.2.6 (2016年12月5日)
  • 5.2.0 (2016年6月2日;穩定版本)[2]
  • 5.0.0 (2015年8月20日;穩定版本)[3]
  • 4.3.1 (2014年1月22日;穩定版本)[4]
  • 4.2.4 (2013年8月8日;穩定版本)[5]
  • 4.2.3 (2013年7月3日;穩定版本)[6]
  • 5.2.12 (2017年10月19日;穩定版本)[7]
  • 5.0.5 (2015年12月3日;穩定版本)[8]
  • 5.0.4 (2015年11月18日;穩定版本)[9]
  • 5.0.3 (2015年10月28日;穩定版本)[10]
  • 5.0.2 (2015年9月30日;穩定版本)[11]
  • 5.0.1 (2015年9月3日;穩定版本)[12]
  • 5.4.3 (2019年5月30日)[13]
  • 5.4.4 (2019年7月30日;穩定版本)[14]
  • 6.0.0.Alpha2 (2019年4月4日;預覽版本)[15]
  • 5.4.13 (2020年3月26日;穩定版本)[16]
  • 6.0.0.Alpha4 (2019年12月20日;預覽版本)[17]
  • 6.0.0.Alpha5 (2020年4月24日;預覽版本)[18]
  • 5.4.14 (2020年4月6日;穩定版本)[19]
  • 5.4.15 (2020年4月30日;穩定版本)[20]
  • 5.4.16 (2020年5月18日;穩定版本)[21]
  • 5.4.17 (2020年5月29日;穩定版本)[22]
  • 5.4.18 (2020年6月22日;穩定版本)[23]
  • 5.4.19 (2020年7月27日;穩定版本)[24]
  • 5.4.20 (2020年8月10日;穩定版本)[25]
  • 5.4.21 (2020年8月27日;穩定版本)[26]
  • 5.4.22 (2020年10月1日;穩定版本)[27]
  • 5.4.25 (2020年12月1日;穩定版本)[28]
  • 5.4.27 (2021年1月6日;穩定版本)[29]
  • 5.4.32 (2021年5月24日;穩定版本)[30]
  • 5.5.6 (2021年8月4日;穩定版本)[31]
  • 5.6.5 (2022年1月26日;穩定版本)[32]
  • 6.2.2 (2023年4月28日;穩定版本)[33]
  • 6.2.3 (2023年5月18日;穩定版本)[34]
編輯維基數據鏈接
源代码库 編輯維基數據鏈接
编程语言Java
操作系统跨平台Java虚拟机
系統平台Java虚拟机
许可协议GNU宽通用公共许可证
网站http://www.hibernate.org

Hibernate是一种Java语言下的对象关系映射(ORM)解决方案。它是使用GNU宽通用公共许可证发行的自由开源的软件。它为面向对象领域模型到传统的关系型数据库的映射,提供了一个使用方便的持久化框架

概览[编辑]

它的设计目标是将软件开发人员从大量相同的数据持久层相关编程工作中解放出来。无论是从设计草案还是从一个遗留数据库开始,开发人员都可以采用Hibernate。

Hibernate不仅负责从Java到数据库表的映射(还包括从Java数据类型到SQL数据类型的映射),还提供了面向对象的数据查询检索机制,从而极大地缩短了手动处理SQLJDBC上的开发时间。

发展历程[编辑]

2001年,澳大利亚墨尔本一位名为Gavin King的27岁的程序员,买了一本SQL编程的书,他厌倦了实体bean,认为自己可以开发出一个符合对象关系映射理论,并且真正好用的Java持久化层框架,因此他需要先学习一下SQL。这一年的11月,Hibernate的第一个版本发布了。

2002年,已经有人开始关注和使用Hibernate了。

2003年9月,Hibernate开发团队进入JBoss公司,开始全职开发Hibernate,从这个时候开始Hibernate得到了突飞猛进的普及和发展。

2004年,整个Java社区开始从实体bean向Hibernate转移,特别是在Rod Johnson的著作《Expert One-on-One J2EE Development without EJB》出版后,由于这本书以扎实的理论、充分的论据和详实的论述否定了EJB,提出了轻量级敏捷开发理念之后,以Hibernate和Spring为代表的轻量级开源框架开始成为Java世界的主流和事实标准。在2004年Sun领导的J2EE5.0标准制定当中的持久化框架标准正式以Hibernate为蓝本。

2006年,J2EE5.0标准正式发布以后,持久化框架标准Java Persistent API(简称JPA)基本上是参考Hibernate实现的,而Hibernate在3.2版本开始,已经完全兼容JPA标准。

程式開發[编辑]

開發環境[编辑]

Hibernate是一个以LGPL(Lesser GNU Public License)许可证形式发布的开源项目。在Hibernate官网上有下载Hibernate包的说明。Hibernate包以源代码或者二进制的形式提供。

開發工具[编辑]

Eclipse:一个开放源代码的、基于Java的可扩展开发平台。

NetBeans:开放源码的Java集成开发环境,适用于各种客户机和Web应用。

IntelliJ IDEA:在代码自动提示、代码分析等方面,具有很好的功能。

MyEclipse:由Genuitec公司开发的一款商业化软件,是应用比较广泛的Java应用程序集成开发环境。

.NET上的Hibernate[编辑]

Hibernate有個在.NET Framework上的實作版本,稱為NHibernate,在ADO.NET Entity Framework發表之前,NHibernate是在.NET Framework上經常被使用的ORM實作。

参考文献[编辑]

  1. ^ First bug-fix release for ORM 5.2. 2016年6月30日 [2016年7月28日] (英語). 
  2. ^ Release 5.2.0. 2016年6月2日 [2018年3月13日]. 
  3. ^ Release 5.0.0. 2015年8月20日 [2018年3月13日]. 
  4. ^ Release 4.3.1. 2014年1月22日 [2018年3月13日]. 
  5. ^ Release 4.2.4. 2013年8月8日 [2018年3月13日]. 
  6. ^ Release 4.2.3. 2013年7月3日 [2018年3月13日]. 
  7. ^ GitHub, GitHub使用者名稱 hibernate/hibernate-orm/blob/master/changelog.txt Wikidata Q364
  8. ^ Release 5.0.5. 2015年12月3日 [2018年3月13日]. 
  9. ^ Release 5.0.4. 2015年11月18日 [2018年3月13日]. 
  10. ^ Release 5.0.3. 2015年10月28日 [2018年3月13日]. 
  11. ^ Release 5.0.2. 2015年9月30日 [2018年3月13日]. 
  12. ^ Release 5.0.1. 2015年9月3日 [2018年3月13日]. 
  13. ^ GitHub, GitHub使用者名稱 hibernate/hibernate-orm/releases/tag/5.4.3 Wikidata Q364
  14. ^ https://in.relation.to/2019/07/30/hibernate-orm-544-final-release/.
  15. ^ https://in.relation.to/2019/04/04/hibernate-orm-600-alpha2-out/.
  16. ^ https://in.relation.to/2020/03/26/hibernate-orm-5413-final-out/.
  17. ^ https://in.relation.to/2019/12/20/600-Alpha4-release/.
  18. ^ https://in.relation.to/2020/04/24/hibernate-orm-600-Alpha5-release/.
  19. ^ https://in.relation.to/2020/04/06/hibernate-orm-5414-final-release/.
  20. ^ https://in.relation.to/2020/04/30/hibernate-orm-5415-final-out/.
  21. ^ https://in.relation.to/2020/05/18/hibernate-orm-5416-final-release/.
  22. ^ https://in.relation.to/2020/05/29/hibernate-orm-5417-final-release/.
  23. ^ https://in.relation.to/2020/06/22/hibernate-orm-5418-final-release/.
  24. ^ https://in.relation.to/2020/07/27/hibernate-orm-5419-final-release/.
  25. ^ https://in.relation.to/2020/08/10/hibernate-orm-5/.
  26. ^ https://in.relation.to/2020/08/27/hibernate-orm-5421-final-release/.
  27. ^ https://in.relation.to/2020/10/01/hibernate-orm-5/.
  28. ^ https://in.relation.to/2020/12/01/hibernate-orm-5425-final-release/.
  29. ^ https://in.relation.to/2021/01/06/hibernate-orm-5427-final-release/.
  30. ^ https://staging.in.relation.to/2021/05/24/hibernate-orm-5432-final-release/.
  31. ^ https://in.relation.to/2021/08/04/hibernate-orm-556-release/.
  32. ^ https://in.relation.to/2022/01/26/hibernate-orm-565/.
  33. ^ Hibernate ORM 6.2.2.Final released. 2023年4月28日 [2023年5月2日]. 
  34. ^ Hibernate ORM 6.2.3.Final released. 2023年5月18日 [2023年5月19日]. 

外部連結[编辑]