介绍一下EJB的体系结构


Posted in 面试题 onAugust 01, 2012
EJB的上层的分布式应用程序是基于对象组件模型的,低层的事务服务用了API技术。EJB技术简化了用JAVA语言编写的企业应用系统的开发,配置,和执行。EJB的体系结构的规范由Sun Microsystems公司制定。Inprise的EJB容器是基于1.1版的规范。
EJB技术定义了一组可重用的组件:Enterprise Beans。你可以利用这些组件,象搭积木一样的建立你的分布式应用程序。当你把代码写好之后,这些组件就被组合到特定的文件中去。每个文件有一个或多个Enterprise Beans,在加上一些配置参数。最后,这些Enterprise Beans被配置到一个装了EJB容器的平台上。客户能够通过这些Beans的home接口,定位到某个beans,并产生这个beans的一个实例。这样,客户就能够调用Beans的应用方法和远程接口。
EJB服务器作为容器和低层平台的桥梁管理着EJB容器和函数。它向EJB容器提供了访问系统服务的能力。例如:数据库的管理和事务的管理,或者对于其它的Enterprise的应用服务器。
所有的EJB 实例都运行在EJB容器中。容器提供了系统级的服务,控制了EJB的生命周期。因为容器掌握了绝大多数系统级的issues(呵呵,不知道怎么翻译)。Enterprise Beans 的开发者不需要应用逻辑考虑进来。通常来说,EJB容器掌握了以下的系统级issues.
1、Security–配置描述器(The Deployment descriptor)定义了客户能够访问的不同的应用函数。容器通过只允许授权的客户访问这些函数来达到这个效果。
2、Remote Connectivity–容器为远程链接管理着低层的通信issues,而且对Enterprise Beas的开发者和客户都隐藏了通信issues.Enterprise Beans的开发者在编写应用方法的时候,就象是在条用本地的平台一样的。客户也不清楚他们调用的方法可能是在远程被处理的。
3、Life Cycle managment–客户简单的创建一个Enterprise beans的实例,并通常取消一个实例。而容器管理着Enterprise Beans的实例,使Enterprise Beans实现最大的效能和内存利用率。容器能够这样来激活和去活Enterprise Beans,保持众多客户共享的实例池。等等。
4、Trasction management—配置描述器定义了Enterprise beans 的事务处理的需求。容器管理着那些管理分布式事务处理的复杂的issues。这些事务可能要在不同的平台之间更新数据库。容器使这些事务之间互相独立,互不干扰。保证所有的更新数据库都是成功发生的,否者,就回滚到事务处理之前的状态。

Tags in this post...

面试题 相关文章推荐
Tomcat Mysql datasource数据源配置
Dec 28 面试题
xml有哪些解析技术?区别是什么
Apr 26 面试题
利用指针变量实现队列的入队操作
Apr 07 面试题
PPP协议组成及简述协议协商的基本过程
May 28 面试题
局域网标准
Sep 10 面试题
C#中有没有运算符重载?能否使用指针?
May 05 面试题
what is the difference between ext2 and ext3
Aug 25 面试题
亿企通软件测试面试题
Apr 10 面试题
网友共享的几个面试题关于Java和Unix等方面的
Sep 08 面试题
XMLHttpRequest对象在IE和Firefox中创建方式有没有不同
Mar 23 面试题
J2EE包括哪些技术
Nov 25 面试题
JAVA软件工程师测试题
Jul 25 面试题
客服端调用EJB对象的几个基本步骤
Jan 15 #面试题
在weblogic中发布ejb需涉及到哪些配置文件
Jan 17 #面试题
如何查看在weblogic中已经发布的EJB
Jun 01 #面试题
分别介绍一下Session Bean和Entity Bean
Mar 13 #面试题
EJB2和EJB3在架构上的不同点
Sep 29 #面试题
比较一下entity bean和session bean
Dec 27 #面试题
介绍一下RMI的基本概念
Dec 17 #面试题
You might like
php HtmlReplace输入过滤安全函数
2010/07/03 PHP
php强制更新图片缓存的方法
2015/02/11 PHP
WordPress中获取页面链接和标题的相关PHP函数用法解析
2015/12/17 PHP
PHP删除字符串中非字母数字字符方法总结
2019/01/20 PHP
PHP addslashes()函数讲解
2019/02/03 PHP
用javascript自动显示最后更新时间
2007/03/15 Javascript
jquery 表格分页等操作实现代码(pagedown,pageup)
2010/04/11 Javascript
jquery cookie的用法总结
2013/11/18 Javascript
浅析hasOwnProperty方法的应用
2013/11/20 Javascript
jquery文字填写自动高度的实现方法
2016/11/07 Javascript
vuejs2.0运用原生js实现简单的拖拽元素功能示例
2017/02/24 Javascript
jQuery实现百度登录框的动态切换效果
2017/04/21 jQuery
前端常见跨域解决方案(全)
2017/09/19 Javascript
vue源码解析之事件机制原理
2018/04/21 Javascript
JavaScript创建防篡改对象的方法分析
2018/12/30 Javascript
vue中使用vee-validator完成表单校验方案
2019/11/01 Javascript
vue 授权获取微信openId操作
2020/11/13 Javascript
PyQt5主窗口动态加载Widget实例代码
2018/02/07 Python
Python实现的批量修改文件后缀名操作示例
2018/12/07 Python
Django Rest framework之认证的实现代码
2018/12/17 Python
Python 实现数据结构中的的栈队列
2019/05/16 Python
Apache部署Django项目图文详解
2019/07/30 Python
Python numpy线性代数用法实例解析
2019/11/15 Python
使用Python提取文本中含有特定字符串的方法示例
2020/12/09 Python
HTML table 表格边框的实现思路
2019/10/12 HTML / CSS
销售实习自我鉴定
2013/12/07 职场文书
学习新党章思想汇报
2014/01/09 职场文书
初中化学教学反思
2014/01/23 职场文书
幼儿园新年寄语
2014/04/03 职场文书
暑期社会实践先进个人主要事迹
2014/05/22 职场文书
日语专业毕业生自荐书
2014/06/18 职场文书
2014小学数学教师个人工作总结
2014/12/18 职场文书
学习与创新自我评价
2015/03/09 职场文书
党员干部廉洁自律承诺书
2015/04/28 职场文书
公务员廉洁从政心得体会
2016/01/19 职场文书
超市啤酒狂欢夜策划方案范文!
2019/07/03 职场文书