学习EJB可以加深对J2EE平台的认识。

百科定义EJB:

被称为java企业bean,服务器端组件,核心应用是部署分布式应用程序。用它部署的系统不限定平台。实际上ejb是一种产品,描述了应用组件要解决的标准

标准:


  • 可扩展 (Scalable)
  • 分布式 (Distributed)
  • 事务处理(Transactional)
  • 数据存储(Persistent)
  • 安全性 (Secure)

J2EE的体系结构

其中EJB属于J2EE体系结构中的业务逻辑部分

EJB构成

EJB容器中有三种类也称为组件,分别是

Session bean(逻辑)

EntityBean(数据)

messageDrivenbean(消息)

上图中可以看到

1 组件是在容器中的。容器提供了组件的环境并对其进行管理。

2  调用组件的被称为ejb客户端。客户端可以运行在web容器中。如jsp,servlet,jndi,web service等

实现逻辑


实现逻辑组件中有各种抽象的方式。这样通过客户端的调用实现了业务的封装

实现分布式

首先要认识到RMI技术(远程调用),EJB的基础是RMI,通过RMI,J2EE将EJB组件创建为远程对象,EJB虽然用到了RMI,但是只需要定义远程接口无需实现,这样就将RMI技术细节屏蔽了。

这种将需要特定执行的类,放在Ejb中并打包发送到服务器上,,客户端通过RMI技术到服务器上进行调用,这样就实现了分布式调用。

所谓的服务器群

既然已经知道了,RMI是将各种任务与功能的类放到不同的服务器上,然后通过各个服务器间建立的调用规则实现分布式的运算,也就明白EJB所谓的"服务群集"的概念。就是将原来在一个计算机上运算的几个类,分别放到其他计算机上去运行,以便分担运行这几个类所需要占用的CPU和内存资源。同时,也可以将不同的软件功能模块放到不同的服务器上,当需要修改某些功能的时候直接修改这些服务器上的类就行了,修改以后所有客户端的软件都被修改了

一个简单的分布式群图

小结:


EJB实现原理:就是把原来放到客户端实现的代码放到服务器端,并依靠RMI进行通信。

服务器集群:就是通过RMI的通信,连接不同功能模块的服务器,以实现一个完整的功能。

EJB规范定义了EJB组件在何时如何与它们的容器进行交互作用。容器负责提供公用的服务,例如目录服务、事务管理、安全性、资源缓冲池以及容错性。但这里值得注意的是,EJB并不是实现J2EE的唯一途径。

什么是EJB的更多相关文章

  1. NetBean 8 创建EJB

    一. 介绍 百度了一下关于在NetBean开发环境里创建EJB的教程,没有找到好的例子,2天的调试过程,写下来帮助后人. EJB (Enterprise Java Bean) 是一套高扩展性的开发企业 ...

  2. J2EE基础之EJB

    J2EE基础之EJB 1.什么是EJB?       EJB(Enterprise Java Beans),是JavaEE中的商业应用组件技术,是JavaEE三大组件(Servlet,JSP,EJB) ...

  3. 2.一个EJB的小Demo

    新建一个java普通项目即可 这里用到了Jboss,需要安装Jboss,然后进入jboss-4.2.3.GA\client目录,拷贝所有的jar包到本项目的lib下. 3个接口分别如下所示: publ ...

  4. 1.认识EJB

    什么是EJB?1. Enterprice JavaBeans(EJB)是一个用于分布式业务应用的标准服务端组件模型. . 采用EJB架构编写的应用是可伸的.事务性的.多用户安全的. . 采用EJB编写 ...

  5. java.lang.IllegalStateException: Not allowed to create transaction on shared EntityManager - use Spring transactions or EJB CMT instead

    java.lang.IllegalStateException: Not allowed to create transaction on sharedEntityManager - use Spri ...

  6. EJB之Timer

    EJB Timer 要么: Annotation @Schedule 或者方法前声明@Timeout 要么: 在部署描述中定义timeout-method 如果是使用@Schedule, Timer在 ...

  7. EJB的调用

    EJB调用.html :first-child{margin-top:0!important}img.plugin{box-shadow:0 1px 3px rgba(0,0,0,.1);border ...

  8. EJB 简介

    EJB: 被称为java企业bean,服务器端组件,核心应用是部署分布式应用程序.用它部署的系统不限定平台.实际上ejb是一种产品,描述了应用组件要解决的标准 标准:   可扩展 (Scalable) ...

  9. EJB初识(通熟易懂)

    转载自http://blog.csdn.net/jojo52013145/article/details/5783677,讲的很透彻,佩服,膜拜学习 1. 我们不禁要问,什么是"服务集群&q ...

  10. EJB 教程推荐

    EJB教程 EJB概述 EJB创建应用 EJB无状态Bean EJB有状态会话Bean EJB持久性 EJB消息驱动Bean EJB注解 EJB回调 EJB定时器服务 EJB依赖注入 EJB拦截器 E ...

随机推荐

  1. 本地测试Tomcat配置Https访问

    一.tomcat开启HTTPS配置 1) 准备证书 使用jdk工具keytool生成一个ssl测试用证书, 一路按照提示操作输入即可 keytool -genkey -alias tomcat -ke ...

  2. [转]C++11 标准新特性:Defaulted 和 Deleted 函数

    http://www.ibm.com/developerworks/cn/aix/library/1212_lufang_c11new/

  3. #include""和#include<>的区别

    一般来说,就是搜索路径不同 #include ""先去搜用户当前路径(也就是调用编译器的路径),然后再去搜用户用-I选项指定的路径,最后再去搜索编译器默认指定的路径(也就是所谓的系 ...

  4. 把一个project相关的jar放到project的lib文件夹中

    例如你有一个project名为xxx,/xxx 文件夹中有src.bin.等等,然后你手工创建一个lib文件夹,这样你就把解压出来的第三方lib(jar包,含javadoc)都放到lib文件夹中,这样 ...

  5. CentOs 7 安装总结

    1.安装 前几天安装了CentOs 7系统,弄了好几次都进不去图形安装界面,总是进入 "dracut:/# _".本以为是系统盘没做好,就用了另外几种工具重做了盘,还是一样.后来在 ...

  6. 基于ffmpeg 直播推流和播放rtmp (IOS源码)

    ios直播推流每秒能达到30帧,比安卓要强,视频采用软编码的话手机会发烫,得采用码编码,播放视频采用opengl渲染. ffmpeg初始化代码如下: int init_Code(int width, ...

  7. hive执行更新和删除操作

    Hive从0.14版本开始支持事务和行级更新,但缺省是不支持的,需要一些附加的配置.要想支持行级insert.update.delete,需要配置Hive支持事务. 一.Hive具有ACID语义事务的 ...

  8. Muller’s method (website)

    Muller's method: https://www.youtube.com/watch?v=3R8NY-trJwI :https://www.youtube.com/watch?v=p4vt7D ...

  9. 什么是 end-to-end 神经网络?——知乎解答

    什么是 end-to-end 神经网络? https://www.zhihu.com/question/51435499 解答1 张旭 像机器一样学习,像人一样生活 YJango 等   端到端指的是 ...

  10. spring mvc +easy ui +Mybatis 录入数据

    1.itemsEasyui.jsp 应用到的插件及知识点:日期控件My97 ,图片本地预览函数PreviewImage() (1)easy ui 的模态窗口使用时,要指定DIV的属性 data-opt ...