网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > Java
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
本月文章推荐
.详细说明 MIDP 中的属性问题.
.[webservices开发]配置XFire.
.让Java.net合作开发 Borland推跨.
.编写高级应用程序2.
.用struts+spring+hibernate组装w.
.谈模式(Singleton Pattern)的变形.
.开源项目关于web app的Log4j应用.
.开发不再是苦差事 用Eclipse简化.
.Java 2 Micro Edition简介(一).
.常用巧门和技巧.
.深入探讨EJB中新的消息驱动组件(.
.Daemon线程.
.对Java提供的两个Map进行了性能测.
.J2ME程序开发新手入门九大要点.
.实现Swing的JTables和Excel间的复.
.从.NET应用程序访问MicrosoftOff.
.EJB设计模式1.
.JDBC3.0有什么新特性.
.在Eclipse 3.1中体验J2SE 5.0的新.
.编写 JScript 代码.

EJB技术的体系结构(1)

发表日期:2008-1-5


为什么使用EJB容器

EJB的体系结构:

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。这些事务可能要在不同的平台之间更新数据库。容器使这些事务之间互相独立,互不干扰。保证所有的更新数据库都是成功发生的,否者,就回滚到事务处理之前的状态。

Enterprise Beans 组件

Enterprise Beans 是基于分布式事务处理的企业级应用程序的组件。所有的Enterprise beans都有如下的特点:

  1. Enterprise beans包含了处理企业数据的应用逻辑
  2. Enterprise beans provider定义了Enterprise beans的客户界面(Enterprise beans 的远程界面)。这样的界面不受容器和服务器的影响。于是,当一个Enterprise beans被集合到一个应用程序中去时,不用更改代码和重新编译
  3. Enterprise beans能够被定制
  4. 各种系统级的服务,例如安全和事务处理的特性,都不是属于Enterprise beans class的。而是由配置和组装应用程序的工具来实现。

有两种类型的Enterprise beans: Session beans 和 entity beans.

Session beans:

Session beans 是一种作为单个的client执行的对象。作为对远程的任务请求的相应,容器产生一个Session beans 的实例。一个Session beans有一个client.从某种程度上来说,一个Session bean 对于服务器来说就代表了它的那个client.Session beans 也能用于事务,它能够更新共享的数据,但它不直接描绘这些共享的数据。

Session beans 的生命周期是相对较短的。典型的是,只有当client保持会话的时候,Session beans 才是活着的。一旦client退出了,Session beans 就不再与client相联系了。Session beans被看成是瞬时的,因为假如容器崩溃了,那么client必须重新建立一个新的Session对象来继续会话。

一个Session bean典型的声明了与client的互操作或者会话。也就是说,Session bean了在客户会话期间,通过方法的调用,把握Client的信息。一个具有状态的Session bean称为有状态的Session bean.当client终止与Session beans互操作的时候.会话终止了,而且,bean 也不再拥有状态值。

一个Session bean也可能是一个无状态的 session bean.无状态的Session beans并不把握它的客户的信息或者状态。Client能够调用beans的方法来完成一些操作。但是,beans只是在方法调用的时候才知道client的参数变量。当方法调用完成以后,beans并不继续保持这些参数变量。这样,所有的无状态的session beans的实例都是相同的,除非它正在方法调用期间。这样,无状态的Session beans就能够支持多个client.容器能够声明一个无状态的Session beans.能够将任何Session beans指定给任何client.

Entity Beans:


上一篇:EJB介绍 人气:8448
下一篇:EJB设计模式(2) 人气:1207
浏览全部Java的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐