含义:

企业级的JavaBeans(Enterprise JavaBean),其设计目标是部署分布式应用程序。

EJB是J2EE的一部分,称为Java企业Bean,它把使用Java开发的服务器组件的部署和开发进行标准化。

类型:

主要有三种:会话bean,实体bean和消息驱动bean。其中会话bean又包含无状态会话bean和有状态会话bean。

会话bean——完成一个清晰的解耦的任务。例如检查账户历史记录等

实体bean——代表存在于数据库中业务的复杂业务实体。

消息驱动bean——用于接收异步JMS消息。

1)无状态会话bean

无状态会话Bean没有中间状态。它们不保持追踪一个方法调用另一个方法传递的信息。因此一个无状态业务方法的每一次调用与它的前一个调用都是独立的。因为他们彼此之间是独立的,所以不需要维护状态。

特点:提供独立的服务,不维持客户端的状态。只在内存中保存,EJB服务器崩溃后不再保存。

2)有状态会话bean

一个有状态的会话bean跨越多个方法调用,它需要维护状态。

例如

融资审批流程,需要先填写计划,再经过层层审批,然后才能走完流程。在流程中,如果遇到系统崩溃或网络故障,其状态是需要保留的。

特点

提供会话的交互,存储客户端的行为状态。在内存中维持,同样在EJB服务器崩溃后不再保存。

3)实体bean

持久性数据在内存中的体现,与前两者不同的事,在应用服务器崩溃后能够恢复。并且它支持来自多个客户的并发访问。

实例

在银行系统中,一个EJB代表一个银行账户。在图书管理系统中,一个EJB代表一本书。在订单管理系统中,一个EJB代表一个客户。

4)消息驱动

唯一一种必须实现一个业务接口的Bean。在消息之间,维持状态的异步组件。

EJB接口

两个可由客户使用的远程接口:Home接口和Remote接口。

1)Home对象

EJB对象的“工厂”或“代理”,管理EJB实例的生命周期。它在所有的EJB的客户间共享。

实例:

//定义home接口

package simplestateless;
import javax.ejb.EJBHome;
import javax.ejb.CreateException;
import java.rmi.RemoteException; public interface StatelessHome extends EJBHome{
public Stateless create() throws CreateException,RemoteException;
}

2)Remote对象

负责EJB的业务操作。

实例:

//定义远程接口

package simplestateless;

import javax.ejb.EJBObject;
import java.rmi.RemoteException; public interface Stateless extends EJBObject{
public double DollarToRMB(double dollar) throws
RemoteException;
}

小结:

      对EJB只是一个初步的了解,期待后续学习的补充。

J2EE的十三个技术——EJB之概述的更多相关文章

  1. J2EE的十三个技术——EJB之实体Bean

    概述: 实体Bean与会话Bean不同,实体Bean是持久的,即使应用程序结束,它仍然存在.它允许共享访问,具有主键. 组成: 1)本地(Local)接口 本地访问EJB,只有在EJB与客户在同一个应 ...

  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. JAVA EE的十三种技术

    java ee 的十三中技术 一.jdbc 1). jdbc-odbc桥 2). jdbc-native 驱动桥 3). jdbc-network 桥 4). 纯java驱动 二. java命令和目录 ...

随机推荐

  1. Core Location :⽤用于地理定位

    Core Location :⽤用于地理定位 在移动互联⽹网时代,移动app能解决⽤用户的很多⽣生活琐事,⽐比如 导航:去任意陌⽣生的地⽅方 周边:找餐馆.找酒店.找银⾏行.找电影院 在上述应⽤用中, ...

  2. Q&A - 如何获取ip地址所在地

    获取其IP地址后,传入以下URL,并请求该URL,该请求会响应一个JSON格式的数据包,该IP地址的所在地均在这个数据包内   http://int.dpool.sina.com.cn/iplooku ...

  3. Liunx 配置sshd服务

    简介 SSH(Secure Shell)是一种能够提供安全远程登录会话的协议,也是目前远程管理Linux系统最首选的方式,因为传统的ftp或telnet服务是不安全的,它们会把帐号口令和数据资料等数据 ...

  4. HDFS学习指南

    本篇HDFS组件基于CDH5进行安装,安装过程:https://www.cnblogs.com/dmjx/p/10037066.html 角色分布 hdp02.yxdev.wx:HDFS server ...

  5. 动态代理和AOP

    之前说过了我对IOC的理解,这篇文章说以下我对动态代理和基本的对AOP的理解. 所谓动态代理就是,在运行时,动态创建实现了一组指定接口的实现类对象. 比如有: interface A { } inte ...

  6. php - 从数据库导出百万级数据(CSV文件)

    将数据库连接信息.查询条件.标题信息替换为真实数据即可使用. <?php set_time_limit(0); ini_set('memory_limit', '128M'); $fileNam ...

  7. Codeforces Round #460 (Div. 2): D. Substring(DAG+DP+判环)

    D. Substring time limit per test 3 seconds memory limit per test 256 megabytes input standard input ...

  8. java线程安全总结 - 2 (转载)

    原文地址:http://www.jameswxx.com/java/%E7%BA%BF%E7%A8%8B%E5%AE%89%E5%85%A8%E6%80%BB%E7%BB%93%EF%BC%88%E4 ...

  9. TouTiao开源项目 分析笔记16 新闻评论

    1.要达到的效果 1.1.主要效果图 点击了标题栏的消息图标后,然后会跳转到评论详情的页面. 1.2.触发的点击事件 在新闻详情的片段中的菜单点击事件中 设置上方标题栏的消息标的监听事件 case R ...

  10. Android 6.0 动态申请 音频+拍照+相册 权限

    1.音频的权限(包括录音和播放) 1.1.首先要在清单中加上两个权限 <uses-permission android:name="android.permission.WRITE_E ...