首页 > 其他分享 >Hibernate

Hibernate

时间:2023-10-14 17:04:31浏览次数:31  
标签:Hibernate Java 框架 EJB SQL 轻量级

Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,它将POJO与数据库表建立映射关系,是一个全自动的orm框架,hibernate可以自动生成SQL语句,自动执行,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的JaveEE架构中取代CMP,完成数据持久化的重任。

  • 发展历程

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标准。 [2]

标签:Hibernate,Java,框架,EJB,SQL,轻量级
From: https://blog.51cto.com/u_16271212/7862484

相关文章

  • hibernate需要的jar
    1.hibernate3.jar、commons-beanutils-1.7.0.jar、commons-collections-3.2.jar、commons-lang-2.3.jar、commons-logging-1.0.4.jar、dom4j-1.6.1.jar、antlr-2.7.6.jar、ezmorph-1.0.3.jar(EZMorph是一个简单的java类库用于将一种对象转换成另外一种对象。......
  • struts2+hibernate+spring+jquery返回json List列表
    1.引入包:struts2-json-plugin-2.1.8.1.jarjson-lib-2.1.jarcommons-collections-3.2.1.jarcommons-beanutils-1.8.2.jarcommons-lang-2.4.jarezmorph-1.0.6.jar,其他的包略,这几个包是返回json形式的数据必须的2.<packagename="default"extends="js......
  • hibernate缓存相关
    hibernate缓存相关hibernate的session提供了一级缓存,每个session,对同一个id进行两次load,不会发送两条sql给数据库,但是session关闭的时候,一级缓存就失效了。二级缓存是SessionFactory级别的全局缓存,它底下可以使用不同的缓存类库,比如ehcache、oscache等,需......
  • hibernate缓存总结
    hibernate缓存总结:缓存是位于应用程序与物理数据源之间,用于临时存放复制数据的内存区域,目的是为了减少应用程序对物理数据源访问的次数,从而提高应用程序的运行性能.Hibernate在查询数据时,首先到缓存中去查找,如果找到就直接使用,找不到的时候就会从物理......
  • struts2.1 + Spring 3.X + hibernate3.X架构搭建问题记录
    目前正在试图搭建一个SSH的架构,之前在myeclipse8.6+ssh(struts2.1,spring2.5,hibernate3) +mysql+tomcat6.0做过例子,当时有老师带着,遇到问题也都解决了。而且,自己练习单表的增删改查时也能独立完成了。但是现在换成了myeclipse2014+orcle后,就是通不过去,郁闷中:现在想一遍解......
  • hibernate 细节
    1  会碰到”NotsupportedforDMLoperations[delete“问题,解决方法,加上Modifying注解2删除更新没有反应  @Rollback(value=false) @Rollback(value=false)@Transactional@TestpublicvoiddelUser(){userDao.deleteByName("mljqqh");longcount=......
  • Hibernate不允许先删除再添加数据
    参考:https://blog.csdn.net/u011366928/article/details/102973616这是Hibernate的优化机制,可以这样理解吧:你的所有操作都会在Hibernate的SQL队列里,这个队列就是先处理Insert再处理Delete的。所以执行顺序和你先的顺序没有关系。如果你要保证先执行Delete操作,那么你需要在Delet......
  • hibernate设计一棵普通的树
    请设计一个树型结构,完成下列需求:1、 任意一个节点只能有一个(或0个)父节点2、 任意一个节点可以包含多个子节点3、 给定任意一个节点,可以输出这个节点的父节点,以及父节点的父节点,一直到顶级节点,要求输出的时候,从顶级节点开始一直输出到给定的节点为止要求:给出实体类代码、hibe......
  • hibernate怎么实现一个类对象map多个表名
    1)映射文件在一个映射文件中定义class和table的对应关系,用entity-name来区分不同的映射:<class=”MyClass”entity-name=”testA”table=”mytable_A”><propertyname=”name”column=”st_name”/>……</class><class=”MyClass”entity-name=”testB”table=”mytable......
  • 入门性文章要替新手多多考虑--csdn开发高手12期《利用Eclipse开发Hibernate应用程序》实
    注:本文使用Eclipse3.0.1(含中文包)测试,中英文请读者自行对应。  这篇文章总体写的不错,对于新手上路很有帮助。不过我在实践的时候也遇到了一些问题,在这里总结出来,希望大家少走弯路。1.Run的问题:“OK,Run一下”,作者仅提到这里,而对于新手,也许在这里就卡住了。怎么Run,Run什么啊?来,我......