herbernate

herbernate起源:在讲herbernate框架定义之前,我们先来了解一下EJB,它是SUN的J2EE中的一套规范,并且规定了一系列的API用来实现把EJB概念转换成EJB产品。,也是sun的JavaEE服务器端组件模型,它的设计目标与核心应用是部署分布式应用程序。简单来说就是把已经编写好的程序(即:类)打包放在服务器上执行。它分为Session Bean (会话 bean,包括有状态与无状态)、Entity Bean (实体bean),其中实体包括BMP(Bean Managed Persistence,bean管理的持久性,需要自己写SQL来读写bean的字段)与CMP(Container Managed Persistence,容器管理的持久性,服务器负责处理数据库访问),Message-Driven Bean(消息驱动Bean MDB,是EJB 2.0规范中添加的EJB组件规范,它兼备EJB和JMS的功能 。MDB被部署为总是充当消息消费者的角色,并且与特定的JMS目的相关联,MDB从JMS目的(队列或主题)接收消息生产者发送的消息。与会话Bean和实体Bean不同的是,消息驱动Bean不需要定义远程接口和Home接口,也不能被客户端直接调用。JMS是Java消息服务(Java Message Service)的简写,是由SUN公司开发的一个开放性的应用编程接口(API)。主要运行过程是应用程序发送JMS消息时,JMS消息服务器根据JMS消息内容转发该JMS到另一个应用程序),在EJB3.0推出以后,实体Bean被单独分了出来,形成了新的规范JPA。JMP是基于Java持久化的解决方案,主要是为了解决ORM框架的差异,它的出现在某种程度上能够解决目前ORM框架之间不能够兼容的问题,对开发人员来说,能够更好的在JPA规范下进行系统开发,JPA虽然出自EJB3,但是其使用的范围却大于EJB3,不仅可以在JavaEE5中,也可以在JavaSE的环境中。JPA有以下几个优点
1可持久化Java对象。JPA能够直接持久化复杂的Java对象,并能够使用JPQL语言进行复杂的查询。JPQL是JPA专用的查询语言,是类似于SQL的面向对象的查询语言。
2使用简单。JPA使用注释(Annotation)定义Java对象与关系数据库之间的映射,而传统的ORM多使用xml配置文件。JPA使用起来比ORM要方便。使用JPA不用关注底层使用什么数据库。
3规范标准化。JPA是JCP组织发布的,是Java官方规定的统一的API。目前已经有多种框架实现JPA标准。使用了JPA的系统可以自由选择遵循JPA标准的框架,并能够自由更换。
4事务性、大数据量。JPA底层使用关系数据库进行存储,因此具备关系数据库的特点,例如事务性、数据完整性、并发访问、大数据量等。
与其他持久化技术(序列化、JDB、ORM、ODB)相比,JPA有很大的技术优势。

EJB主要功能是

1支持事务处理,多个业务操作同时成功,或全部失败
2可以通过在代码外的描述来定义事务处理级别
3可扩展性,可以根据您应用的增长而扩展 
4EJB 服务器往往还提供了负载均衡
5安全性,由 EJB 服务器提供资源的访问权限控制
  由于软件发展到目前为止,大多数应用不需要采用分布式的解决方案,因此用EJB显得太臃肿了。SSH的出现恰恰为了解决这个问题。但它们的目标都是容器类框架,为松耦合的POJO类提供中间件服务。框架通过在运行时截取执行环境,或将服务对象注射给POJO类的方式,将应用服务和POJO类“连接”起来。POJO类本身并不关注如何“连接”,而且也很少依赖于框架。
它们区别:
1、EJB来源于官方,一经通过,即成为了标准,Spring来源于开源社区,是由广大开发者共同参与开发的
2、EJB是重量级的,而Spring是轻量级的,倡导零侵入性。
3、分布式能力。EJB主要被用来做分布式开发,但是Spring不具备分布式能力。

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

类与接口:Hibernate的核心类和接口一共有6个,分别为:Session、SessionFactory、
Transaction、Query、Criteria和Configuration。这6个核心类和接口在任何开发中都会用到。通过这些接口,不仅可以对持久化对象进行存取,还能够进行事务控制

完整的实例

需要准备:

1 库文件 ssh各个版本的库文件详解: 点击打开链接

2 数据库驱动:

3 映射文件:

4 配置文件:(看需要是否添加日志文件)

5持久化类

6 JDBC操作封装类

下一篇讲它第一个应用关联映射

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值