含义:

企业级的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. Spring注解@Value数值取值转换字符串失败

    配置文件(yml)中,配置项如下: cebconfig: INST_CODE: 08801001 SFT_NOTIFY_CEB_CHANNEL: 123456 期望INST_CODE: 0880100 ...

  2. 当Java遇见了Html--Servlet篇

    ###一.什么是servlet servlet是在服务器上运行的小程序.一个servlet就是一个 java类,并且通过"请求-响应"编程模型来访问的这个驻留在服务器内存里的程序. ...

  3. [异常笔记] spring boot 启动-2018040201

    异常 1.编码引发异常 00:59:49.311 [main] DEBUG org.springframework.boot.devtools.settings.DevToolsSettings - ...

  4. Target runtime Apache Tomcat v8.5 is not defined.

    Target runtime Apache Tomcat v8.5(或者其它版本) is not defined. 这个错误通常是在从文件夹中导入别人的项目的时候发生,因为 在 .setting 中有 ...

  5. 10.2 DOM 操作技术【JavaScript高级程序设计第三版】

    很多时候,DOM 操作都比较简明,因此用JavaScript 生成那些通常原本是用HTML 代码生成的内容并不麻烦.不过,也有一些时候,操作DOM 并不像表面上看起来那么简单.由于浏览器中充斥着隐藏的 ...

  6. Linux系统完整安装在虚拟机Mini

    打开VMware Workstation虚拟机,然后如下图一步到位: 此处只是简单的安装Linux系统,要想查看安装后的IP等配置看: https://www.cnblogs.com/gentle-a ...

  7. 华为模拟器ensp安装教程

    华为模拟器说实话有时候真的是很烦人,总是莫名其妙的出问题,而且网上教程一般也解决不了 因此我认为学会ensp的重装真的很重要,因此只要我们删除干净了,安装最多花不了20分钟的时间 接下来我就来说说怎么 ...

  8. Linux下添加桌面快捷方式

    这里用Ubuntu下BurpSuite举例 sudo vim /home/user/Desktop/burpsuite.desktop //burpsuite随意起名,系统会系动创建文件 文件写入 # ...

  9. WPF系列教程——(二)使用Prism实现MVVM设计模式 - 简书

    原文:WPF系列教程--(二)使用Prism实现MVVM设计模式 - 简书 本文假设你已经知道MVVM设计模式是什么,所以直接进入正题,今天我们就用Prism来实现WPF的MVVM设计模式,百度上关于 ...

  10. Android开发——事件分发机制详解

    0. 前言   转载请注明出处:http://blog.csdn.net/seu_calvin/article/details/52566965 深入学习事件分发机制,是为了解决在Android开发中 ...