概述:

实体Bean与会话Bean不同,实体Bean是持久的,即使应用程序结束,它仍然存在。它允许共享访问,具有主键。

组成:

1)本地(Local)接口

本地访问EJB,只有在EJB与客户在同一个应用的情况下才可以使用。使用时,它可以与远程接口同时使用。

它可以优化访问EJB,绕过了RMI.

2)远程(Remote)接口

与本地接口最大的不同在于远程接口可以从任何地方访问

命名:

如果只使用local或Remote接口之一,可使用正常名称。例如HelloWorld和HelloWorldHome。

如果同时使用两种接口,就要用'Local'或'Remote'作为接口的前缀。例如

HelloWorldLocal,HelloWorldLocalHome

HelloWorldRemote,HelloWorldRemoteHome.

3)主键

唯一标识了实体的EJB.由实体bean的一个或多个持久性字段组成,它在部署描述文件中指定。

类型:

1)CMP实体Bean

——容器管理的持久性实体Bean

特点:

由容器控制,容器可以实现高级的数据缓冲和EJB间的复杂关系。

2)BMP实体Bean

——对数据的操作代码由Bean作者提供。

特点:

需要在bean中手工编写所有的持久性逻辑,这样一来使得调试十分困难。但它可以表示复杂的持久性数据。

两种类型的比较:

生命周期:

实体bean的生命周期有三种状态:Does Not Exist --不存在,Pooled--入池,Ready--就绪。

入池Pooled就是把已创建的实体bean移到可用的实例池中。

这三种状态之间的转换和方法调用如下图所示:

小结:

实体bean的内容很多也很杂,多与之前学过的东西相联系,运用对比分析,就会轻松许多了。比如本地接口与远程接口的比较,CMP与BMP的比较等。

J2EE的十三个技术——EJB之实体Bean的更多相关文章

  1. J2EE的十三个技术——EJB之概述

    含义: 企业级的JavaBeans(Enterprise JavaBean),其设计目标是部署分布式应用程序. EJB是J2EE的一部分,称为Java企业Bean,它把使用Java开发的服务器组件的部 ...

  2. J2EE的十三个技术——EJB之消息驱动JMS

    JMS--Java Message Service JAVA的消息服务,消息可实现两端通信. 用于访问面向消息中间件的标准api,他提供与厂商无关的访问方法,以访问消息收发服务. 特点:即使其中一方不 ...

  3. J2EE的十三种技术(规范)

    J2EE的十三种技术(规范)  Java数据库连接(JDBC) JDBC API以一个统一的方式访问各种数据库.与ODBC类似,JDBC将开发者和私有数据库之间的问题隔离开来.由于它建立在Java上, ...

  4. j2ee的十三种技术

    J2EE的十三种技术(规范)  种不同的驱动,具体来说,包括有: 类型1:JDBC-ODBC桥 在JDBC刚产生时,JDBC-ODBC桥是非常有用的.通过它,开发者可以使用JDBC来访问一个ODBC数 ...

  5. J2EE的十三个技术——JSP

    简介 JSP,Java Server  Page,Java服务器页面.它是在传统的网页HTML文件中插入Java程序段(Scriptlet)和JSP标记,从而形成JSP文件,后缀名为(*.jsp). ...

  6. J2EE的十三种技术——JNDI

    背景: 上一篇博客中介绍了J2EE的十三种技术之一--JDBC,主要用于提供了统一访问多种数据库的方式.这篇文章我们继续介绍J2EE的技术--JNDI. JNDI: Java Naming and D ...

  7. J2EE的十三种技术——JDBC

    背景: 之前准备软考的时候,我们就学习过J2SE的视频.在进入J2EE之前,一定要复习和回顾下Java的基础知识,这对以后的学习十分重要.首先,简单回忆下java的体系结构.Java有三个体系结构:J ...

  8. J2EE的十三个技术——Servlet

    简介: 基于协议的请求/响应服务的Java类.通俗的说,Servlet是在服务器上运行的小程序.为什么叫Servlet?Applet表示小应用程序,Server+Applet即为Servlet,表示小 ...

  9. J2EE 领域的一些技术框架结构图

    J2EE 领域的一些技术框架结构图       阿里百川,开启移动应用开发的新篇章 1.Spring 架构图 Spring 是一个开源 框架,是为了解决企业应用程序开发复杂性而创建的.框架的主要优势之 ...

随机推荐

  1. 实际案例告诉你为什么Oracle不建议使用varchar2来存时间数据

    问题现象2015年9月客户系统中一条高逻辑读的SQL语句,在业务高峰期执行频率较高,导致系统逻辑读居高不下,同时带高了系统CPU,SQL语句主体部分如下 SELECT /* ^^*/ COUNT(DI ...

  2. 【MySQL】使用SQL语句操作MySQL

    前言: MySQL在工作中是最常用的数据库,但在使用Django和Flask的时候,都是使用ORM进行操作,除了select语句外,其他的SQL语句操作MySQL的能力没有啥提高,为了解决这个问题, ...

  3. winrar压缩工具

    WinRAR使用心得 免广告 英文版可以设置广告关闭,地址: https://www.win-rar.com/predownload.html?&Version=64bit 把WinRAR默认 ...

  4. oracle中的预定异常和自定义异常

    预定异常 oracle中的预定异常情况大约有24个,对于这种异常情况的处理,无须再程序中定义,可用oracle自动引发,常见的预定异常如下 异常 说明 ACCESS_INTO_NULL 在未初始化对象 ...

  5. 在React Native中集成热更新

    最近,在项目DYTT集成了热更新,简单来说,就是不用重新下载安装包即可达到更新应用的目的,也不算教程吧,这里记录一下. 1.热更新方案 目前网上大概有两个比较广泛的方式,分别是 react-nativ ...

  6. jQuery检测判断复选框是否被选中了的几种方法

    方法一:if ($("#checkbox-id")get(0).checked) {    // do something} 方法二:if($('#checkbox-id').is ...

  7. 在MAC下使用Robotframework+Selenium2【第二枪】如何处理Table点击指定记录

    1.通过关键字Get Matching Xpath Count获取table中的记录 2.遍历Table所有记录 3.判断记录是否符合条件,做点击操作

  8. WPF 加载等待动画

    原文:WPF 加载等待动画 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/qq_29844879/article/details/80216587 ...

  9. android studio 首字母提示 设置 大小写敏感

    在使用Android studo 编写程序时, 刚开始,关键字提示 首字母 设置了 大小写敏感,小写字母只能提示小写字母开头的,大写字母只能提示大写字母开始的,比较麻烦,在网上搜了下,解决办法如下: ...

  10. 关于 package.json 和 package-lock.json 文件说明

    package.json 在 Node.js 中,模块是一个库或框架,也是一个 Node.js 项目.Node.js 项目遵循模块化的架构,当我们创建了一个 Node.js 项目,意味着创建了一个模块 ...