为什么要使用EJB

EJB体系结构之EJB容器 EJB容器 EJB容器(中间件)在EJB服务器环境中进行,EJB容器为EJB构件提供操作环境。        主要来说,EJB容器管理一下的系统级问题:      持久性(Persistence)      生命周期管理(Life Cycle Management)      安全性(Security)      事务管理(Transaction Management 阅读详情
 
经常有同学问我这样的问题:现在企业使用EJB的多吗?什么情况下会使用EJB?为了回答这个问题,我们首先要知道EJB的目标是什么。
EJB的目标
在EJB的规范中描述的EJB的目标如下:
Ø         企业JavaBean架构将成为使用Java2编程语言构建面向对象的业务应用的标准组件架构。
Ø         企业JavaBean架构将成为使用Java2编程语言构建分布式的业务应用的标准组件架构。
Ø         企业JavaBean架构将支持Web Service的开发、部署和使用。
Ø         企业JavaBean架构将简化应用程序的编写:应用开发者不必理解底层的事务和状态管理细节,多线程,连接池,或者其它的复杂的底层API。
Ø         企业JavaBean应用将遵循Java编程语言的“Write Once, Run Anywhere™”特性。企业Bean开发一次,可以不重新编译或者修改源代码而直接部署在多个平台上。
Ø         企业JavaBean架构将解决企业应用生命周期中的开发、部署和运行等各方面问题。
Ø         企业JavaBean架构定义协议来保证来自不同厂商的开发、部署组件的工具能够在运行的时候相互协作。
Ø         企业JavaBean架构使得使用不同厂商的工具开发的组件来构建应用成为可能。
Ø         企业JavaBean架构将提供企业Bean和Java EE组件以及非Java语言编写的应用之间的交互。
Ø         企业JavaBean架构将与已经存在的服务器平台兼容。厂商能够通过扩展他们已经存在的产品来支持企业JavaBeans。
Ø         企业JavaBean架构将与其它Java API兼容。
Ø         企业JavaBean架构将与CORBA协议兼容。
(上面的内容来源《Java EE5实用教程——基于WebLogic和Eclipse》)
目标解读
对于上面的内容可以从以下几个方面理解:
要成为标准组件架构、不同厂商的工具可以相互协作:如果成为标准,将会有众多的EJB提供者、使用者、和工具提供者,应用前景绝对可观。
用于分布式:可能涉及数据的分布式、处理过程分布式以及管理的分布式,这样意味着EJB绝对不是为了小的应用。
要支持Web Service、要与其他Java EE组件或者非Java应用交互、要与已经存在的服务器平台兼容、要与其它的Java API兼容、要与CORBA协议兼容,由此可见EJB绝对不是为了处理简单的问题。
简化应用程序的编写,包括组件的编写和使用。应用开发者不必理解底层的事务和状态管理细节,多线程,连接池,或者其它的复杂的底层API。如果没有这些支持,我们要开发分布式应用,可能需要考虑很多东西,而现在简化多了。
目前公司的应用情况
在2006年《程序员》的调查中,使用EJB的应用的比例是13%,应该说这个比例不高,本人认为可能的原因有两个:
第一,              EJB主要用于大型分布式系统,而实际上现在很多系统还都比较简单,尤其是独立的网站特别多。以至于JSP的应用能到61%。
第二,              EJB的功能非常强大,并且比较复杂,所以学习的难度比较大。
而在今后,这两个方面都应该会发生变化,而且是朝着有利于EJB的发展的方向发生变化。软件系统在企业中的作用越来越明显,今后会有更多的企业愿意花更多的钱来开发满足企业发展的复杂的系统,这时候EJB就可以有用武之地了。关于EJB的复杂性,从EJB3可以看出,已经有很大改进,现在EJB的开发与普通的JavaBean的开发已经没有太大的区别。
鉴于以上的分析,还是建议那些希望在Java方向发展的人不要放弃EJB,如果您学进去,会发现并不难,并且它里面很多思想对您会有深刻的影响。
 
EJB 介绍 NULL 博文链接:https://j2ee2009.iteye.com/blog/1092698 立即下载

相关推荐

EJB使用范例

EJB使用的一个小例子,有助于新人学习中间件

为什么要用EJB

1998年3月在SanFrancisco召开的JavaOne98开发者大会上,Sun公司正式发布了业界期待已久的EJB1.0版(EnterpriseJavaBeans1.0)规范说明,在众多的大公司和开发人员中引起了巨大的反应,这标志着用Java开发企业级应用系统将变得非常简单。这次JavaOne大会也被称之为"EJB展览会",许多公司纷纷表示要推出有关EJB的产品,已经推出或正准备推出EJB产品

Bob@优快云 924

为什么要使用EJB?

首先,我们必须明确,为什么要使用J2EE?J2EE优点是什么?使用J2EE的主要原因是多层结构,传统的两层C/S结构难于维护,稳定性极差,界面代码和数据库代码混淆在一起,牵一动百,多层结构使得界面和数据库完全分离,并且诞生了中间件这样的技术,如下图:Web+EJB能组成真正的多层结构为什么使用EJB我原先认为这不是一个讨论的话题,因为EJB是J2EE重要的组成部分,可以说没有EJB的J2EE只是一种Web系统,这样的系统非常容易丧失了多层结构的大部分优点(仔细想想那些混合多种层次功能JavaBeans和传统两层结构有什么区别?)。当然,可以人为地在Javabeans之间进行层次划分,例如Hib

关于EJB,为什么用EJB?为什么不用EJB?

EJB

学习编程,热爱编程 1万+

Android存储方案对比(SharedPreferences 、 MMKV 、 DataStore)

简介:本文介绍了Android开发中常用的键值对存储方案,包括SharedPreferences、MMKV和DataStore,并且对比了它们在性能、并发处理、易用性和稳定性上的特点。通过实际代码示例,帮助开发者根据项目需求选择最适合的存储方案,提升应用性能和用户体验。

LiuYong_01的博客 1795

【时序列】时序列数据如何一步步分解成趋势(trend)季节性(seasonality)和误差(residual)- 详细理解python sm.tsa.seasonal_decompose

【时序列】时序列数据如何一步步分解成趋势(trend)季节性(seasonality)和误差(residual)- 详细理解python sm.tsa.seasonal_decompose 在做时序列分析的时候,好多教程都告诉你要把时序列分解成趋势,季节性,残差,然后画图看一下有没有趋势变化,有没有季节性。像这样: import statsmodels.api as sm decomposition = sm.tsa.seasonal_decompose(train['Count'] ,model='add

weixin_47442572的博客 2万+

EJB初探(二)为什么需要EJB

EJB(Enterprise Java Bean)是JavaEE中面向服务的体系架构的解决方案,可以将功能封装在服务器端,以服务的形式对外发布,客户端在无需知道方法细节的情况下来远程调用方法,大大降低了模块间的耦合性,提高了系统的安全性和可维护性。本章将介绍EJB的作用,创建一个基于EJB的程序,讲解EJB的配置以及会话Bean的使用。 为什么需要EJB 要想知道为什么要使用EJB,就需要知道...

jcpp9527的博客 3831

Cocos Creator+微信小游戏:如何用wxDownloader实现资源动态加载与热更新

本文深入探讨了在Cocos Creator开发微信小游戏时,如何利用wxDownloader有效应对主包体积限制,实现资源的动态加载与热更新。文章详细介绍了从项目配置、资源标记到初始化加载的完整流程,并重点解析了基于MD5 Cache的缓存策略与版本控制方案,旨在帮助开发者构建稳健高效的资源管理体系,优化游戏启动速度与更新体验。

css33的专栏 825

ejb的定义配置及其使用

1、ejb定义 a、定义一个ejb接口:继承EJBObject类,定义方法名; b、定义ejb类:实现SessionBean接口,并实现ejb接口中的方法; c、定义home类:继承EJBHome类,创建ejb接口对象。 例如: public interface VentureHome extends EJBHome { Venture crea...

336

CPRI原理及应用--基本原理

本文主要介绍CPRI的基本原理,包括CPRI的发展历程、CPRI基本协议、速率、帧结构、时延模型等

u014035968的博客 2万+

virtuoso如何导出def?

在DEF Out界面,填写def name,library name以及cell name ,cell view既layout,把Output "Floating Shapes" into SPECIAL NETS Section勾上,OK即可。2)在要导出的layout界面选中PAD和prBoundary(shift+左键),快捷键C copy到空cell里,这时需要调整copy过来的object坐标,让两边prBoundary的坐标相同。我正在「拾陆楼」和朋友们讨论有趣的话题,你⼀起来吧?

m0_61544122的博客 2307

EJB基本概念和使用

EJB基本概念和使用

灿的博客 4212

maya导入导出bvh 自动 脚本

maya打开bvh脚本

jacke121的专栏 1551

什么是EJB?EJB详解

EJB到底是什么? 我们不禁要问,什么是"服务集群"?什么是"企业级开发"? 既然说了EJB 是为了"服务集群"和"企业级开发",那么,总得说说什么是所谓的"服务集群"和"企业级开发"吧!这个问题其实挺关键的,因为J2EE 中并没有说明白,也没有具体的指标或者事例告诉广大程序员什么时候用EJB 什么时候不用。于是大家都产生一些联想,认为EJB"分布式运算"指得是"负载均衡"提高系统的运行效率。然而,估计很多人都搞错了,这个"服务群集"和"分布式运算"并没有根本解决运行负载的问题,尤其是针对数据库的应用系

soulofball的博客 1万+

android studio 2022打开了v1 签名但是生成的apk没有v1签名问题

我使用了Android Studio Flamingo | 2022.2.1 Patch 2版本的IDE编译了一个apk,但是apksigner查看apk的签名信息时,发现只有v2签名,没有v1签名。试着改小一下minSdkVersion 为23重新编译apk,再检测一下签名版本v1居然打开了!参考网上搜索到的方法,手动在build.gradle里面添加。但是编译出来的apk还是只有v2的签名。里面提到了v1签名还和。

hedalei的博客 466

Linux 服务器上部署 OpenClaw完整教程

2. 全局安装 OpenClaw 3. 初始化配置 配置模型提供商 方式一:使用配置命令(推荐) 方式二:直接编辑配置文件 在 部分添加: 配置多个模型提供商 如果你使用 Antigravity 本地代理,可以同时配置多个模型: 配置飞书集成 1. 创建飞书应用 访问 飞书开放平台 创建企业自建应用 记录 App ID 和 App Secret 2. 配置应用权限 在飞书开放平台,为应用添加以下权限:重要: 必须使用 长连接(WebSocket) 模式,不要使用 HTTP 回调!在飞书开放

Maynor的博客 5250

java swing ejb_为什么要使用EJB

首先,我们必须明确,为什么要使用J2EE?J2EE优点是什么?使用J2EE的主要原因是多层结构,传统的两层C/S结构难于维护,稳定性极差,界面代码和数据库代码混淆在一起,牵一动百,多层结构使得界面和数据库完全分离,并且诞生了中间件这样的技术,如下图:Web+EJB能组成真正的多层结构为什么使用EJB我原先认为这不是一个讨论的话题,因为EJB是J2EE重要的组成部分,可以说没有EJB的J2EE只是一...

weixin_39889337的博客 175

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

EJB基础三 有状态EJB

有状态EJB其实是类似于CDI中的依赖作用域。就是你需要一个有状态EJB的时候,就会新建一个有状态EJB。因为根据需求创建的,所以每个请求都有一个,这样才可以保存状态,故成为有状态EJB。 无状态EJB在wildfly中默认最大20个,假如有100个请求,那么这20个无状态EJB只能被共享。共享了又怎么能保存客户端的状态呢?购物车就是个明显的有状态EJB,将购物车它放到session里,这样保证

ilovewqf的博客 5万+

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

【进阶EJB】问你EJB知多少?

EJB近几年好像不太常用了,但是作为SUN公司重点推荐的一种规范,其强大之处还不被很多人熟知。接下来一系列关于EJB的博文就将一一揭开EJB的神秘面纱,今天我们就先来宏观看一下就是什么是EJB呢?

不忘初心 1649

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

EJB2移植到EJB3的一些实践

众所周知EJB被人病诟的很大的一个缺陷就是它复杂的配置,和奇异的编程模型。所以EJB3的推出减小了这些毛病, 但是Rod Johnson似乎还是不满意:) 关于2个标准的对比已经有很多文章和书籍了,我这里不再赘述。我只想说的是自己经历到的移植的经验,希望和大家分享。主要是session bean的移植。首先是开发EJB配置的模式由于EJB3把配置由descriptor移到了

卢声远 Shengyuan Lu的专栏 1817

为什么要使用EJB?(转载)

为什么要使用EJB?(转载)init_Nav();  首先,我们必须明确,为什么要使用J2EE?J2EE优点是什么?使用J2EE的主要原因是多层结构,传统的两层C/S结构难于维护,稳定性极差,界面代码和数据库代码混淆在一起,牵一动百,多层结构使得界面和数据库完全分离,并且诞生了中间件这样的技术。  Web+EJB能组成真正的多层结构  为什么使用EJB我原先

空中花园的专栏 1614

EJB 叫我如何爱上你 --评《精通EJB》及EJB

是本好书先谈谈《精通EJB》这本书,Ed Roman是著名网站TheServerSide.com的CEO,自己也拥有一家专门从事中间件开发的公司MiddleWare, 另外两个合著者Tyler Jewell是BEA的J2EE专家,Scott W. Ambler也是面向对象设计和敏捷建模的大师,由这样的专家写出来的书籍,的确堪称经典,让人看得放心,读得顺心。整个J2EE架构是个非常复杂的架构,而《精

天外网志 1万+

为什么要使用EJB?

  为什么要使用EJB?   ================      EJB最大的诱人之处是她把应用程序和服务器分开了,我们再也不用和那些服务器上的复杂的资源打交道了,什么数据库,什么进程,线程,什么安全权限,什么套接字,都见鬼去吧,我们只需要专著于我们的商业逻辑的实现了.      ==========   EJB的实质?   ==========      EJB实际上是SUN...

windy2coast 210
上一篇: 有状态会话Bean(sfsb)和无状态会话Bean(slsb)的区别
下一篇: 消息驱动Bean(MDB)的开发
老李-大连
博客等级 码龄20年 3206粉丝 308原创
评论 4
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值