EJB是什么

个人理解:EJB可以说像是一个Web Service,但也不完全是,比如EJB将编写好的业务组件放置在EJB容器上,然后提供接口给客户端访问;但是功能不仅限如此,EJB标准中提供了很多规范等,而这些规范只有在EJB容器才能正常运行。还可以说是RPC(Remote Procedure Call远程过程调用)。

以上是最好理解的概念,但是详细的介绍就不是那么简单,以下是详细的说明:

https://zh.wikipedia.org/wiki/EJB

http://developer.51cto.com/art/200906/128387.htm

https://my.oschina.net/yao00jun/blog/219930

总的来说可以归纳于下面两张图:

图片转自:http://www.cnblogs.com/MyITHome/archive/2012/08/31/2665917.html

EJB与Spring的区别:

Spring容器取代了原有的EJB容器,因此以Spring框架为核心的应用无须EJB容器支持,可以在Web容器中运行。

Spring容器管理的不再是复杂的EJB组件,而是POJO(Plain Old Java Object) Bean。

对于Spring的作者而言,他已经深深地吃透了EJB的设计理念,并遵循这种理念开发出了一个开源的Spring框架。换个角度来看,Spring容器又何尝不是另一个Bean容器,只是这个Bean容器并未遵循Sun公司的EJB容器规范。

个人理解:也就是说EJB需要EJB提供的容器才能进行部署。

详细参考:http://book.51cto.com/art/201008/220993.htm

EJB容器:

1、BEA weblogic
2、IBM websphere
3、Oracle 9i App server
4、Sun one

时间: 2024-12-22 14:09:46

EJB是什么的相关文章

【J2EE浅析】——EJB

一.EJB概述 EJB(EnterpriseJava Bean)--java企业Bean,是J2EE十三种规范的一部分,为服务器端组件模型,设计目标与核心应用是部署分布式应用程序.EJB是java的核心代码,包括三种Bean类型:会话Bean(Session Bean),实体Bean(EntityBean)和消息驱动Bean(MessageDriven Bean). 通俗的说,EJB就是一个运行在独立的服务器上,封装了业务逻辑的组件.在一个商务软件中,核心部分就是其业务逻辑,它抽象了整个商务过程

EJB概述

Ejb(Enterprise JavaBeans)是使用java语言构造可移植的.可重用的和可伸缩的业务应用程序的平台. 从开发者的角度,EJB是在称为EJB容器的特定运行时环境中执行的一段java代码,容器提供若干组件服务. EJB组件有三种类型:会话bean.消息驱动bean和实体bean.会话bean和消息驱动bean用于实现EJB应用程序中的业务逻辑,而实体用于持久化. 容器以非常优雅的方式为EJB组件提供服务:当容器部署EJB时,通过指定要添加的服务类型,使用元数据注解预配置EJB.元

EJB

EJB是sun的JavaEE服务器端组件模型,设计目标与核心应用是部署分布式应用程序.简单来说就是把已经编写好的程序(即:类)打包放在服务器上执行.凭借java跨平台的优势,用EJB技术部署的分布式系统可以不限于特定的平台.EJB (Enterprise JavaBean)是J2EE(javaEE)的一部分,定义了一个用于开发基于组件的企业多重应用程序的标准.其特点包括网络服务支持和核心开发工具(SDK). 在J2EE里,Enterprise Java Beans(EJB)称为Java 企业Be

EJB、RMI、XMLRPC、Hessian、Thrift 、Protobuf

Java中实现分布式的方式有:EJB.RMI.XMLRPC.Web Service.Hessian.Thrift .Protobuf.NIO(Netty.Mina) EJB 优势:可扩展性好,安全性强,支持分布式事务处理. 劣势:不能跨语言:配置相对复杂,不同J2EE容器之间很难做无缝迁移. RMI 优势:面向对象的远程服务模型:基于TCP协议上的服务,执行速度快. 劣势:不能跨语言:每个远程对象都要绑定端口,不易维护:不支持分布式事务JTA,RMI框架对于安全性.事务.可扩展性的支持非常有限.

EJB对象的部署及客户端调用简单示例

一,EJB对象的写法及部署 1,新建一个EJB Project,在包里加入接口及实现类: 实现类通常以Bean结尾,并且通过注解方式指定EJB类型: 之后,部署到JBoss服务器上. 二,客户端调用 1,将EJB项目中的接口类打包,并把这个jar包加入到client项目中. 2,将JBOSS安装目录下的client目录里面的所有jar包加到客户端项目中 3,加入jndi.properties文件,将地址配置为EJB项目的发布地址 注意:这个properties文件最好反正根目录下,不然可能会产生

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中配置数据库的连接需要两

EJB学习(一)——EJB和WEB打包

在做Java版高校云平台的时候,每个模块在搭建底层的时候都建立了三个项目,分别是jar项目(对象core层).war项目(对应web层)和ear项目(对应ear层),刚开始接触这好几个项目,有些蒙了.最近在总结EJB的相关知识,对这些项目有了一些基本的了解,下面就对各个项目如何打包进行一个总结. 在这之前,我们先来认识一下EJB,EJB是sun的JavaEE服务器端组件模型,设计目标与核心应用是部署分布式应用程序.简单来说就是把已经编写好的程序(即:类)打包放在服务器上执行.那么打包是怎么个回事

EJB开发第一期---EJB开发配置

一.EJB 3.0简介 1.1 什么是EJB Enterprise JavaBeans是一个用于分布式业务应用的标准服务端组件模型.采用Enterprise JavaBeans架构编写的应用是可伸缩的.事务性的.多用户安全的.采用ejb编写的这些应用,可以部署在任何支持Enterprise JavaBeans规范的服务器平台,如jboss.weblogic等. EJB实际上是用于编写业务层代码.如果大家对于MVC (model-view-controller)结构的应用有所了解的话,我们知道一个

EJB究竟是什么,真的那么神奇吗??

1. 我们不禁要问,什么是"服务集群"?什么是"企业级开发"? 既然说了EJB 是为了"服务集群"和"企业级开发",那么,总得说说什么是所谓的"服务集群"和"企业级开发"吧!这个问题事实上挺关键的,由于J2EE 中并没有说明确,也没有详细的指标或者事例告诉广大程序猿什么时候用EJB 什么时候不用.于是大家都产生一些联想,觉得EJB"分布式运算"指得是"负载均

JBOSS EAP 6.2 -EJB远程调用-客户端的配置

EJB访问方式分为远程客户端访问.本地客户端访问和WebService客户端. 所谓的EJB的远程调用是说客户端与服务端的EJB对象不在同一个JVM进程中. 本地客户端是说客户端与服务端的EJB对象在同一个JVM进程中. WebService客户端可以访问无状态会话Bean的接口,只有在业务逻辑方法被标识为@WebMethod的时候,webService客户端才可以访问到. 远程调用 在没有远程调用的时候,我们需要用到别人的数据了,就直接把别人的接口和实现都拿过来了,接着打到自己的包中,这样做一