EJB-全局认识

  1. 概念

    • EJB(Enterprice JavaBeans) 是 一 个 用 于 分 布 式 业 务 应用 的 标 准 服 务 端 组 件 模 型 。 采 用 EnterpriceJavaBeans
      架 构 编 写 的 应 用 是 可 伸 的 、 事 务 性的 、 多 用 户 安 全 的 。 采 用 ejb 编 写 的 这 些 应 用 ,可 以 部 署 在 任 何 支 持 Enterprice JavaBeans 规范
      的 服 务 器 平 台, 如 jboss 、 weblogic 等 。
  2. 作用
    • EJB 实 际 上 是 用 于 编 写 业 务 层 代 码 。 如 果 大 家 对于 MVC (model-view-controller) 结 构 的 应 用 有所 了 解 的 话 , 我
      们 知 道 一 个 基 于 MVC 结 构 的 应用 应 包 含 显 示 层 、 控 制 层 和 业 务 层 , 假 设 我 们采 用 ejb 开 发 基 于 MVC 结 构 的 应 用 , 那 么 ejb 就是
      用 于 开 发 应 用 的 业 务 层 。
  3. 好处
    • EJB 为 我 们 提 供 了 很 多 在 企 业 开 发 中 需 要 使 用 到的 服 务 , 如 事 务 管 理 / 安 全 / 持 久 化 / 分 布 式 等 , 因为 这 些 服 务
      由 容 器 提 供 , 无 需 我 们 自 行 开 发 , 这样 大 大 减 少 了 我 们 的 开 发 工 作 量。
  4. EJB分布式特点
    • 应用模式的不同

    • 实际使用形式举例
  5. EJB VS Spring
    • 学过SSH的人肯定知道, 除 了 EJB, 像 spring+hibernate 同 样 提 供 了 事 务 管 理 /持 久 化 服 务 , 好 像 没 有 必 要 使 用 EJB。如 果
      你 的 应 用 不 需 要 分 布 式 能 力 , 确 实 没 有 必 要 使 用 EJB , 因 为供 了 大 酎 分 原 来 只 有 EJB 才 有 的 服 务 , 而 且spring 提 供 的 有 些 服 务 比 EJB 做 的 更 细 致 , 更 周 到 . 那 么 是 不 是 有了
      spring, EJB3就 没 有 必 要 存 在 了 ? 这 种 说 法 是 不 正 确 的 , 因 为EJB 设 计 的 初 衷 是 用 干 分 布 式 场 合 , 而 spring 一 开 始 就 没 有 打 算 提供 分 布 式 功 能 。 所 以 两 者 看 似 有 竞 争 的 关
      系 , 但 实 际 上 两 者 的 偏重点不 一 样 , 像 EJB 比 较 适 合 用 于 大 型 企 业 , 因 为 大 型 企 业 一 般都 会 存 在 多 个 信 息 系 统 , 而 这 些 信 息 系 统 又 相 互 关 联 。 为 了 避 免业
      务 功 能 重 复 开 发 , 实 现 最 大 程 度 的 重 用 , 有 必 要 把 业 务 层 独 立出 来 , 让 多 个 信 息 系 统 共 享 一 个 业 务 中 心 , 这 样 应 用 就 需 要 具 备分 布 式 能 力 。
  6. 是否应该学习EJB
    • 要 不 要 学 习 EJB ? 如 果 你 学 习 EJB只 为 了 找 份 工 作的 话 , 那 么 现 实 情 况是 , 目 前 使 用 EJB 的 人 数 虽 然 有 所上 升 , 但
      是 在 关 于 EJB 的 工 作 岗 位 并 不 多 。 所 以 依 靠 它 找 工 作 的 话 ,恐 怕 会 让 你 失 望 。当 然 如 果 你 只 是 为 了 学 习 的 话 , 那 么 EJB 是 非常 值 我 们 学 习 的 , 因 为 EJB 包 含 的 知 识 点 非 常 多
      , 学 习 它 可 以 开拓 我 们 的 知 识 面 。 对 于 一 线 的 java 开 发 人 员 , 我 更 是 建 议 , 不 管在 工 作 中 是 否 用 EJB , 都 应 该 学 习 一 下 , 因 为 通 过 学 习 它 ,可
      以 让 你 站 更 高 的 台 阶 思 考 问 题 。
  7. EJB的发展前景
    • 很 多 人 都 会 司 到 EJB 的 发 展 前 景 , 可 以 告 诉 大 家 EJB 的 发 展 前 套 越 来 越 好 。目 前 在 java 社 区 关 于 EJB 讨 论 的 话 题 并 不 是 很 多 , 而 且 EJB 占 的 市 场 份额
      也 很 少 , 这 种 情 况 主 要 与 它 的 定 位 有 关 , 至 少 现 在 它 的 定 位 还 是 在 分 布 式 应 用 。 有 组 织 统 计 过 在 100 个 项 目 中 , 需 要 分 布 式 的 应 用 只 占 15 % ,而 85 % 的 应 用 都 是 不 需 分
      布 才 的 , 这 个 比 例 孰 决 定 了 关 注 EJB 的 人 不 会 很 多 , 而 且 EJB 所 占 的 市 场 份 额 也 不 会 很 大 。 如 EJB 要 占 领 大 部 分 市 场 份 额 就 必 须 提 供 像 Spring这 样 的 轻 量 级 解 决 方 案 。
      如 果 能 够 实 现 的 话,EJB 的 市 场 将 会 大 大 的 增 加。因 为 EJB 的 开 发 和 Spring 一 样 的 简 单, 而 且 EJB 是 javaee 规 范 里 的 技 术 , 所 以 大 部 分 项 目 经 理 都 愿 意 选 择 一 种 开 发
      简 单 、 又 被 更 多 厂 商 兼 容 的 标 准 技 木 。

    对 以 上 有 了 一 个 全 面 的 认 识 的 时 候 下 面 的 学 习 肯 定 得 更 加 保 质 保 量 的 完 成 了。正好在ITOO里也用到了,虽然资料有点少,不过只要功夫深,铁杵磨成针,大不了去官网英文网站好好看了。

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

时间: 2024-10-12 08:55:20

EJB-全局认识的相关文章

JBoss7部署EJB连接MySQL

该文章记录了在原有SmartHome项目基础上加入MySql数据库.配置数据源.添加实体类和配置文件.添加调用方法等,并成功使用客户端程序连接WebService,远程调用EJB连接数据库获取到数据. 开发环境:Win7,jdk1.7,JBoss AS7.1.1Final,MySql 5.6,MyEclipse 10. 一.MySQL 建表等,此处略去.(注意连接使用remote用户,不能使用localhost用户) 二.在JBoss7中配置MySQL数据源 在JBoss中配置数据库的连接需要两

JBOSS EAP 6 系列四 EJB实现——调用(贯穿始终的模块)

本文主要介绍在JBOSS EAP 6.2(或者JBOSS AS7)中模块是如何贯穿EJB实现的始终.延续上一博文<认识模块的使用>的话题继续聊JBOSS做为模块申明式容器的这一特性在EJB实现中的完全贯彻. Session bean JBOSS EAP(AS7)中默认的EJB是3.1版本遵循JSR318规范.EJB从3.0开始已经全面引入Annotation的概念,3.0以前的EJB需要在XML文件里面对Bean所做的配置都能通过标签的方式在代码中实现.同时,之前为了工厂模式而做的双接口Hom

EJB 介绍

EJB 编辑 EJB是sun的服务器端组件模型,设计目标与核心应用是部署分布式应用程序.凭借java跨平台的优势,用EJB技术部署的分布式系统可以不限于特定的平台.EJB (Enterprise JavaBean)是J2EE的一部分,定义了一个用于开发基于组件的企业多重应用程序的标准.其特点包括网络服务支持和核心开发工具(SDK). 在J2EE里,Enterprise Java Beans(EJB)称为Java 企业Bean,是Java的核心代码,分别是会话Bean(Session Bean),

EJB invocations from a remote client using JNDI

本文解释了如何从远程客户端通过调用ejb的JNDI API首先查找bean代理,然后调用代理. 部署环境为Jboss Eap 6.3,首先部署ejbs到jboss服务器中 客户端实现 创建一个java项目,引入jboss-client.jar,该包在jboss\bin\client位置获取,用于获取jbossEAP中的JNDI上下文. 然后在代码最外层(src下),添加配置属性文件jboss-ejb-client.properties,该文件用于致命如何简历服务端的远程配置  jboss-ejb

ejb Name Environment

关于EJB3.x的命名空间一直都很迷惑,有些地方规范上写得也不是很清楚.在网上搜索了一些资料做个整理: EJB reference,是指一个EJB引用另一个EJB的business interface, non-interface views或者home接口. 我们可以在部署描述符ejb-jar.xml中: 1.在同一ejb-jar.xml中一个EJB对另一个EJB的引用,因此大多数情况下,. 2.同一应用(企业应用)中一个EJB对另一个EJB的引用(它们在不同的ejb-jar.xml中被声明)

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

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

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.x

EJB开发第一个无状态会话bean、开发EJB客户端

开发第一个无状态会话bean EJB中的三中bean: 会话Bean(Session Bean) 负责与客户端交互,是编写业务逻辑的地方,在会话bean中可以通过JDBC直接操作数据库,但大多数情况下都是通过实体bean来完成对数据库的操作. 实体Bean(Entity Bean) 它实际上属于java持久化规范(JPA)里的技术,JPA的出现主要是为了简化现有的持久化开发工作和整合ORM技术,结束现在Hibernate.TopLink等ORM框架各自为营的局面. 消息驱动Bean(Messag

EJB学习(五)——依赖注入

    一.Why? 我们在客户端调用服务端对象的时候,通常需要通过服务器的 JNDI 来查找session bean或MDB.JNDI 查找是把客户端与实际的服务端实现解藕的关键步骤. 但是, 直接使用一个字符串来进行 JNDI 查找并不优雅.有这样几个原因: · 客户端与服务端必须有一致的基于字符串的名字. 它没有在编译时得到认证或在部署时得到检查. · 从 JNDI 返回的服务对象的类型没有在编译时进行检查, 有可能在运行时出现转换(casting)错误. · 冗长的查找代码,有着自己的

会话EJB系列(六)依赖注入

在本文的开始之前,先给大家介绍一个概念"依赖". 什么是依赖呢? 简单的说,就是A组件需要调用B组件,B组件需要调用C组件,C组件需要调用D组件-..这种调用称为:依赖! 在最早的应用程序中,依赖关系时通过new关键字来实现的.A组件依赖B组件,就是在A组件中显示的new一个B组件.缺点: 1.硬编码,耦合性强,难以维护.A组件只需要B组件中的方法,不必关心B组件的创建问题! 2.频繁的创建对象,导致系统开销增大. 上面的这种缺点,直接催生了'工厂模式'. 在工厂模式中,A组件依赖B组