EJB学习(六)——Entity Bean 和 Hibernate的比较

在学习EJB的Entity Bean这一块的时候,感觉它和Hibernate是一样一样的,把当初总结Hibernate的导图找了出来,经过对比,感觉两个几乎是差不错的,下面就在Hibernate的基础上理解下EJB的Entity Bean.

我们通过上面的导图来对Entity Bean和Hibernate做个比较:

1.Hibernate中的全局配置文件hibernate.cfg.xml和Entity Bean中的persistence.xml

Hibernate的hibernate.cfg.xml:这一部分主要记录了连接数据库的必要信息,比如数据库驱动、数据库名称、用户名和密码,以及Hibernate访问不同数据库需要的方言配置,还有一部分就是对xxx.hbm.xml文件的引入。

persistence.xml:指定实体 Bean 使用的数据源及 EntityManager对象的默认行为。这里的EntityManager对象的默认行为,时间上就是配置DDL的生成策略,和上面不同的是,persistence.xml中没有每个实体的xxx.hbm.xml文件。

2.Hibernate中的"实体+实体.hbm.xml"和Entity Bean中的"实体类"

Hibernate中把实体映射到数据库需要"实体.hbm.xml",而在Entity
Bean中,实体映射到数据库是通过注释完成的,在类上和类的属性上打上相应的标签即可。

3.Hibernate中的Session和Entity Bean中的EntityManager

在Hibernate中,对数据的增删改差是通过Session实现的;而在Entity Bean中,对实体的增删改差则是通过EntityManager,即持久化实体管理器完成的。而且他们的对实体的操作除名称外几乎都是差不多的。

总结:

实际上,通过查阅资料,发现EJB
3.0 EntityBean API调用转换为内部Hibernate3自己的API,从而实现EJB3.0 EntityBean的兼容。通过相比较来学习,能更好的掌握它们之间的异同。

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-10-14 08:51:46

EJB学习(六)——Entity Bean 和 Hibernate的比较的相关文章

【进阶EJB】深入探讨三种Bean(二)——Entity Bean

通过上一篇文章,我们介绍了[进阶EJB]深入探讨三种Bean(一)--Session Bean,这篇文章继续介绍EJB的三种Bean,今天我们重点介绍一下Entity Bean. Entity Bean,通过名字我们就知道是实体Bean是存放数据的.Entity Bean是持久化的数据组件,代表持久存储的商业实体对象.通常情况下,每个Entity Bean对应于关系数据库中的单张表,Entity Bean的单个实例对应于表中的某一条数据.上篇文章中说的Session Bean可作为Entity

POJO / JavaBean / Entity Bean

POJO 和JavaBean是我们常见的两个关键字,一般容易混淆,POJO全称是Plain Ordinary Java Object / Pure Old Java Object,中文可以翻译成:普通Java类,具有一部分getter/setter方法的那种类就可以称作POJO,但是JavaBean则比 POJO复杂很多, Java Bean 是可复用的组件,对 Java Bean 并没有严格的规范,理论上讲,任何一个 Java 类都可以是一个 Bean .但通常情况下,由于 Java Bean

EJB学习(四)——Enterprise Bean(企业Bean)和Entity Bean(实体Bean)

    一.为什么使用EJB ? 企业Bean运行在EJB容器中,企业Bean实际上就是一个封装了业务逻辑的Java类,那么我们为什么要使用EJB呢 ? 1.最重要的原因:分布式.简要的说,分布式可以将分布在各处的资源综合利用,但是对于用户来说展现的是一个统一的整体:分布式可以动态分配任务,分散物理的和逻辑的资源,从而提高执行效率:分布式技术可以避免由于单个节点失效而使整个系统崩溃的危险. 2.分布式对象之间的事务支持,RMI(Remote Method Invocation,远程方法调用)不支

Java之旅EJB(2)——三种bean之会话bean

前面我们大致讲过ejb是什么,这里不再对定义进行讲解,主要是讲解内部的组成. 1.      Bean分类 会话bean(session bean) 负责与客户端交互,是编写业务逻辑的地方,在会话bean中可以通过jdbc直接操作数据库,但大多数情况下都是通过实体bean来完成对数据库的操作. 实体bean(Entity bean) 它实际上属于java持久化规范(简称JPA)里的技术,JPA的出现主要是为了简化现有的持久化开发工作和整合ORM技术,结束现在hibernate.toplink等框

EJB学习随手笔记

名词: 注解方式: @persistenceContext:持续.存留:环境.上下文: @Stateless: 无状态(无权的) @Remote:  远程接口 一.EJB接口 remote和local的? 二.(Enterprice JavaBeans )EJB基础知识: ①EJB是一个用于分布式业务应用的标准服务端组件模型.采用EJB架构编写的应用是可伸的.事务性的.多用户安全的.一次编写这些应用, 然后部署在任何支持EJB规范的服务器平台,如:JBOSS/WEBLOGIC. ②EJB定义了三

我的EJB学习历程

http://blog.csdn.net/sinapaper/archive/2004/06/28/28659.aspx http://blog.csdn.net/sinapaper/archive/2004/06/29/29634.aspx http://blog.csdn.net/sinapaper/archive/2004/06/30/30538.aspx http://blog.csdn.net/sinapaper/archive/2004/07/01/31231.aspx http:/

springMVC3学习(六)--SimpleFormController

SimpleFormController提交表单流程例如以下: login.jsp <form action="login" method="post"> 用户名:<input type="text" name="username"/></br> 密码:<input type="password" name="password"/><

Hibernate学习笔记(1)Hibernate配置

一 准备工作 首先我们将创建一个简单的基于控制台的(console-based)Hibernate应用程序. 我们所做的第一件事就是创建我们的开发目录,并且把所有需要用到的Java库文件放进去.解压缩从Hibernate网站下载的Hibernate发布包,并把所有需要的库文件拷到我们项目中去. 学习建User-library-hibernate,并加入相应的jar包 (a)项目右键-buildpath-configure build path-add library (b)选择User-libr

JBoss+Ant实现EJB无状态会话bean实例

EJB分为session bean.entity bean.message-driven bean,session bean又分为无状态会话bean和有状态会话bean. session bean负责与客户端交互,是编写业务逻辑的地方,在session bean中可以通过jdbc直接操作数据库,但大多数情况下都是通过entity bean来完成对数据库的操作的. 平常,我们使用最多的是无状态bean,因为它的bean实例可供多个用户使用,所以它的性能比有状态bean高.正因为一个bean实例被多