Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1503812
  • 博文数量: 3500
  • 博客积分: 6000
  • 博客等级: 准将
  • 技术积分: 43870
  • 用 户 组: 普通用户
  • 注册时间: 2008-05-03 20:31
文章分类

全部博文(3500)

文章存档

2008年(3500)

我的朋友

分类:

2008-05-04 19:51:42

一起学习
电子商务和信息技术的快速发展及对它的需求给应用程序开发人员带来了新的压力。必须以比以前更少的金钱、更少的资源来更快地设计、建立和生产企业应用程序。 为了降低成本,并加快企业应用程序的设计和开发,J2EE平台提供了一个基于组件的方法,来设计、开发、装配及部署企业应用程序。J2EE平台提供了多层的分布式应用模型、组件重用、一致化的安全模型以及灵活的事务控制。您不仅可以比以前更快的速度向市场推出创造性的客户解决方案,而且,您的平台独立的、基于组件的J2EE解决方案不会被束缚在任何一个厂商的产品和API上。 J2EE规范定义了以下种类的组件: 应用的客户组件(Application client components) Enterprise JavaBeans(tm)组件(Enterprise JavaBeans(tm) components) Servlets及JavaServer Pages(JSP页面)组件(Servlets and JavaServer Pages (JSP pages) components) Applets 一个多层的分布式的应用模型意味着应用逻辑被根据功能而划分成组件,并且可以在同一个服务器或不同的服务器上安装组成J2EE应用的这些不同的组件。一个应用组件应被安装在什么地方,取决于该应用组件属于该多层的J2EE环境中的哪一层。这些层是客户层、Web层、业务层及企业信息系统层(EIS)。 客户层 J2EE应用可以是基于Web的,也可以不是基于Web的。在一个基于Web的J2EE应用中,用户的浏览器在客户层中运行,并从一个Web服务器上下载Web层中的静态HTML页面或由JSP或Servlets生成的动态HTML页面。在一个不基于Web的J2EE应用程序中,一个独立的客户程序,并不运行在一个HTML页面中,而是运行在其他一些基于网络的系统中,在不经过Web层的情况下访问enterprise beans。该不基于Web的客户层可能也包括一个JavaBeans类来管理用户输入,并将该输入发送到在企业层中运行的enterprirse beans类来处理。根据J2EE规范,JavaBeans类不视为组件。 为J2EE平台编写的JavaBeans类有实例变量和用于访问实例变量中的数据的“get和set方法”。以此种方式使用的JavaBeans类在设计和实现上通常都是简单的,但是它们必须符合JavaBeans规范中列出的命名和设计约定。 Web层 J2EE Web层组件可以由JSP页面、基于Web的applets以及显示HTML页面的servlets组成。调用servlets或者JSP页面的HTML页面在应用程序组装时与Web组件打包在一起。就像客户层一样,Web层可能包括一个JavaBeans类来管理用户输入,并将输入发送到在业务层中运行的enterprise beans类来处理。 运行在客户层的Web组件依赖容器来支持诸如客户请求和响应以及enterprise beans查询等。 业务层 作为解决或满足某个特定业务领域(比如银行、零售或金融业)的需求的逻辑的业务代码由运行在业务层的enterprise beans来执行。一个enterprise beans从客户程序处接收数据,对数据进行处理(如果需要),再将数据发送到企业信息系统层存储。一个enterprise bean还从存储中检索数据,并将数据送回客户程序。 运行在业务层的enterprise beans依赖于容器来为诸如事务、生命期、状态管理、多线程及资源存储池提供通常都非常复杂的系统级代码。 业务层经常被称作Enterprise JavaBeans(EJB)层。业务层和Web层一起构成了3层J2EE应用的中间层,而其他两层是客户层和企业信息系统层。 企业信息系统层 企业信息系统层运行企业信息系统软件,这层包括企业基础设施系统,例如企业资源计划(ERP)、大型机事务处理(mainframe transaction processing)、数据库系统及其他遗留信息系统(legacy information systems)。J2EE应用组件因为某种原因(例如访问数据库)可能需要访问企业信息系统。 注意:J2EE平台的未来版本将支持Connector架构,该架构是将J2EE平台连接到企业信息系统上的一个标准API。 查询服务(lookup services) 因为一个J2EE应用程序的组件是单独运行的,并且往往在不同的设备上运行,因此,需要一种能让客户层和Web层代码查询并引用其他代码和资源的方法。客户层和Web层代码使用Java命名和目录接口(JNDI)来查询用户定义的对象(例如enterprise beans)、环境条目(例如一个数据库驱动器的位置)、企业信息系统层中用于查找资源的JDBC DataSource对象,以及消息连接。 安全(Security) J2EE安全模型允许配置一个Web或enterprise bean组件,使系统资源只能由授权的用户访问。例如,一个Web组件可以被配置成提示输入用户名和密码。一个enterprise bean组件可以被配置成只能让特定团体中的成员调用其某种方法。或者,一个servlet组件可以被配置成让某个组织中的所有人都能访问其某些方法,同时只让该组织中的某些享有特权的人访问另一些方法。同样是该servlet组件,可以针对另外一个环境而被配置成让每个人都能访问其所有方法,或者仅让选定的少数人访问其所有方法。 事务管理(Transaction Management) J2EE事务模型使得能够在部署时定义构成一个单一事务的方法之间的关系,以使一个事物中的所有方法被处理成一个单一的单元。这是我们所希望的,因为一个事物是一系列步骤,这些步骤要么全部完成,要么全部取消。 例如,一个enterprise bean可能有一组方法,使我们可以通过从第一个帐户借出并存入第二个帐户的方式而将钱从第一个帐户转移到第二个帐户。我们希望全部的操作被作为一个单元对待,这样,如果在借出之后存入之前发生了故障,该借出操作被取消。 事务属性是在装配期间定义在一个组件上的。这使的能将来自多个应用组件的方法归到一个事务中,这说明,我们可以轻易变更一个J2EE应用程序中的应用组件,并重新指定事务属性,而不必改变代码或重新编译。 应当注意,JSP页面和servlets没有被设计成是事务的,它们通常将事务工作交给一个enterprise bean来完成。 诸如安全和事务管理这样的应用行为可以在部署时在Web和enterprise bean组件上进行配置。这个特征将应用逻辑从可能随装配而变化的配置设定中分开了。
相关连接:
J2EE 蓝图摘要一 J2EE 蓝图摘要二——J2EE基本架构:概述 J2EE 蓝图摘要三——可重用的应用组件 J2EE 蓝图摘要三——设计用户界面和引擎 J2EE 蓝图摘要四——设计基于Web的应用程序 J2EE 蓝图摘要五——Servlets和JSP页面 J2EE 蓝图摘要六——模型,视图和控制器架构 J2EE 蓝图摘要七——J2EE应用程序中的Enterprise Bean J2EE 蓝图摘要八——宠物商店应用程序 下载本文示例代码


J2EE 蓝图摘要二——J2EE基本架构:概述J2EE 蓝图摘要二——J2EE基本架构:概述J2EE 蓝图摘要二——J2EE基本架构:概述J2EE 蓝图摘要二——J2EE基本架构:概述J2EE 蓝图摘要二——J2EE基本架构:概述J2EE 蓝图摘要二——J2EE基本架构:概述J2EE 蓝图摘要二——J2EE基本架构:概述J2EE 蓝图摘要二——J2EE基本架构:概述J2EE 蓝图摘要二——J2EE基本架构:概述J2EE 蓝图摘要二——J2EE基本架构:概述J2EE 蓝图摘要二——J2EE基本架构:概述J2EE 蓝图摘要二——J2EE基本架构:概述
阅读(150) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~