专注于互联网--专注于架构

最新标签
网站地图
文章索引
Rss订阅

首页 »Java教程 » j2ee是什么:J2ee 10 »正文

j2ee是什么:J2ee 10

来源: 发布时间:星期日, 2008年12月21日 浏览:2次 评论:0
企业应用系统开发直面临着重大挑战:方面企业应用系统面对个异构分布式环境它必须支持和已有系统集成性和和其他系统互操作性;另方面作为为客户、合作伙伴和企业内部提供信息服务平台企业系统还必须具有高可用性、安全性、可靠性和可伸缩性这些要求再加上复杂多变用户需求和不断伸缩交付时间使得企业系统开发越来越困难开发商和广大直在努力推动和殷切期待个成熟、标准企业平台来简化和规范标准企业系统开发和部署Java技术出现尤其是J2EE(Java 2 Platform Enterprise Edition)平台推出正是这种努力结果也使得企业系统开发由此变得更加快速和方便需要指出J2EE本身是个标准它为区别厂商创建平台产品提供了标准使区别J2EE平台产品的间交互成为可能 J2EE旅程 Java于1996年由Sun公司推出当时它主要用途是制作产生动态网页Applet后来人们发现Java次开发多次运行”、纯面向对象特性、垃圾回收机制和内置安全性特别适合于开发企业应用系统于是企业应用开发商纷纷在Java标准版基础上各自扩展出许多企业应用API其结果导致基于Java企业应用呈爆炸式增长但是各企业系统API的间又不能相互兼容破坏了Java平台独立性鉴于此Sun公司联合IBM、Oracle、BEA等大型企业应用系统开发商于1998年共同制订了个基于Java组件技术企业应用系统开发规范标准该规范标准定义了个多层企业信息系统标准平台旨在简化和规范标准企业应用系统开发和部署规范标准和其定义平台就构成了J2EE目前J2EE最新版本是J2EE 1.3需要注意J2EE本身是个标准而不是个现成产品(虽然现在有很多符合J2EE标准产品)它由以下几个部分组成: J2EE规范标准该规范标准定义了J2EE平台体系结构、平台角色及J2EE中每种服务和核心API实现要求它是J2EE应用服务器开发商大纲
J2EE兼容性测试站点Sun公司提供个测试J2EE应用服务器是否符合J2EE规范标准站点对通过该站点测试产品Sun公司将发放兼容性证书
J2EE参考实现即J2EE SDK它既是Sun公司自己对J2EE规范标准个非商业性实现又是为开发基于J2EE企业级应用系统原型提供个免费底层开发环境
J2EE实施指南即BluePrs文档该文档通过例子来指导开发人员如何去开发个基于J2EE多层企业应用系统 组件-容器 搭建体系架构 J2EE规范标准定义了个基于组件多层企业应用系统开发平台其逻辑结构如图1所示图中椭圆形表示组件大矩形表示容器包含向下文字小矩形表示API箭头表示访问箭头线上文字表示相应协议 J2EE是个基于组件-容器模型系统平台其核心概念是容器容器是指为特定组件提供服务个标准化运行时环境Java虚拟机就是个典型容器组件是个可以部署单元它以某种方式运行在容器中容器封装了J2EE底层API为组件提供事务处理、数据访问、安全性、持久性等服务在J2EE中组件和组件的间并不直接访问而是通过容器提供协议和思路方法来相互组件和容器间关系通过“协议”来定义容器底层是J2EE服务器它为容器提供J2EE中定义各种服务和API个J2EE服务器(也叫J2EE应用服务器)可以支持种或多种容器在图1中你可能已经注意到每个容器服务包括两部分:J2SE(Java 2 Platform Standard Edition)和组扩展服务这是J2EE是以Java标准版为基础各容器在J2SE的上再根据需要提供些扩展服务如目录服务、事务管理、数据访问、消息机制、安全性等 J2ee核心——EJB J2EE定义了 4种组件:Applet组件、Application客户组件、Web组件及EJB(Enterprise JavaBeans)组件其中Applet和Application客户组件在客户端运行J2EE通过Java插件为Applet提供运行环境Application客户容器就是本地Java虚拟机Web及EJB组件在服务器端运行J2EE中包含两种Web组件:JSP和Servlet它们是Web服务器功能扩展都能生成动态Web页面区别是JSP是将Java代码嵌入到HTML中服务器负责解释执行生成结果返回用户(和ASP技术相似)而Servlet是单独Java类它动态生成HTML文件返回给客户Web组件容器比较典型就是基于JavaWeb服务器 EJB是J2EE平台核心也是J2EE得到业界广泛关注和支持主要原因我们知道J2EE个主要目就是简化企业应用系统开发使员将主要精力放在商业逻辑开发上EJB正是基于这种思想服务器端技术它本身也是种规范标准该规范标准定义了个可重用组件框架来实现分布式、面向对象商业逻辑EJB核心思想是将商业逻辑和底层系统逻辑分开使开发者只需关心商业逻辑而由EJB容器实现目录服务、事务处理、持久性、安全性等底层系统逻辑 个可部署EJB组件包含3个部分:
Remote 接口 Remote接口定义EJB组件中提供可供用户思路方法也就是通常所说实现商业逻辑或过程(如计算商品价格)以供远程客户端在EJB组件部署到容器时候容器会自动生成Remote接口相应例子即EJB对象它负责代理用户请求
Home接口 Home接口定义组思路方法来创建新EJB对象查找、定位和清除已有EJB对象在EJB组件部署时容器也会自动生成相应Home对象该对象负责查找和创建EJB对象返回EJB对象引用给客户;用户利用该引用EJB组件思路方法得到结果;最后Home对象清除EJB对象我们可以形象地称Home接口为EJB对象工厂
Enterprise Beans类 Enterprise Beans类是商业逻辑具体实现类其可供用户思路方法在Remote接口中定义根据功能区别EJB 2.0规范标准中定义了 3种Enterprise Beans:会话Beans(Session Beans)、实体Beans(Entity Beans)和消息驱动Beans(Message-driven Beans) 会话Beans分无状态和有状态两种般无状态会话Beans模拟商业逻辑比如计算价格等有状态会话Beans通常模拟个客户会话它会临时保存客户信息根据客户要求其他Beans来存取数据两种会话Beans都不保存状态信息或数据当客户断开连接或服务器关闭时会话Beans也随的消失个会话Beans典型例子是网站WebSite上购物车 实体Beans模拟商业数据它表示个数据存储可以是状态信息或数据库中条纪录实体Beans在客户断开连接或服务器关闭后仍有服务保证其数据得以保存个实体Beans典型例子就是客户账号信息 消息驱动Beans在行为上很像会话Beans区别是仅在需要向这些Beans发送消息时才消息驱动Beans,比如在需要时候发送用户确认信息等 另外在提交和部署EJB组件时还需要两个文件:部署描述文件容器根据该文件来部署Enterprise Beans提供所要求服务;EJB jar文件它是提交给EJB容器个部署单元容器(应用服务器)在部署时解开它装入Enterprise Beans EJB容器非常复杂般由专业J2EE应用服务器开发商提供比较流行EJB容器由IBMWebShpere、BEA公司WebLogic Server、Sun公司iPlant等应用服务器提供EJB容器除了为EJB提供事务处理、目录服务、持久性管理和安全性服务外还负责EJB部署、发布和生命周期管理 平台标准服务 服务是组件和容器的间以及容器和J2EE服务器的间接口在实现层面上它就是系列API和协议J2EE平台定义了组标准服务其中有些服务是由J2SE提供有些则是J2EE对Java扩展
目录服务 JNDI(Java Name and Directory) API为应用提供了个统接口来完成标准目录操作由于JNDI是独立于目录协议应用可以用它访问各种目录服务如LDAP、NDS、DNS等
数据访问 JDBC(Java Database Connectivity) API为访问区别类型数据库提供了统途径屏蔽了区别数据库细节具有平台无关性J2EE平台除了要求核心JDBC API(包含在J2SE中)外还要求扩展JDBC API 2.0它支持行集、连接池和分布式事务处理
事务处理 JTA(Java Transaction Architecture)定义了组标准接口为应用系统提供可靠事务处理支持JTS(Java Transaction Service)是CORBA OTS事务监控Java实现JTS规定了事务管理器实现方式该事务管理器在高层支持JTA标准在底层实现了OMG OTS规范标准Java映射
消息服务 JMS(Java Message Service)是组用于和面向消息中间件相互通信API它既支持点对点消息通信也支持发布/订阅式消息通信
电子邮件 JavaMail API允许在应用中以独立于平台、独立于协议方式收发电子邮件JAF(JavaBeans Activation Framework)负责处理MIME编码JavaMail利用JAF来处理MIME编码邮件附件
CORBA兼容接口 RMI(远程思路方法)是在分布式对象间通信Java本地思路方法它使应用远程思路方法像本地思路方法不需要考虑所对象位置RMI-IIOP是RMI扩展是符合CORBA标准对象通信协议也是J2EE默认组件通信协议Java IDL允许J2EE应用组件通过IIOP协议访问外部CORBA对象
安全服务 JAAS(Java Authentication and Authorization Service)用两个步骤实现安全性:认证即由用户提供认证信息(如用户名和密码)来获得系统认证过程又称的为登录;授权在被确认为合法用户后系统根据用户角色授予其相应权限J2EE授权是基于安全角色概念个安全角色是个拥有相同权限逻辑组J2EE安全角色由应用组件提供商来定义
Web服务支持 目前J2EE还不提供对Web服务支持Sun提供了套API及其实现WSDP作为对J2EE扩展但目前还不是J2EE规范标准内容在WSDP中JAXP用来解析XML文档;JAXR向UDDI服务器注册Web Services;JTX/RPC用基于XML协议(如SOAP)来发送和接收XML文档;JWSDL处理WSDL文档虽然J2EE不是为Web服务而生但它现在正在努力追赶Web服务脚步 多层应用模型 从应用角度来看J2EE为企业应用系统开发提供了种多层分布式企业应用模型在J2EE中应用逻辑按功能区别可以划分为区别类型组件各组件根据它们所在层分布在区别机器上共同组成个基于组件分布式系统 如图2所示J2EE定义了个典型 4层结构分别是客户层、Web层、商业逻辑层和企业信息系统层 在应用开发时J2EE定义 4层模型可根据实际情况灵活运用由于除了Applet外其他组件都可以访问数据库、EJB组件和企业信息系统所以通过区别层取舍及组合可以衍生出许多应用软件Software开发模型如基于Web 4层模型、基于桌面应用 3层模型(不包括Web层)、B2B模型(不包括客户层)等如果应用系统比较简单般不用EJB作为逻辑层而直接用Web组件来实现商业逻辑和数据访问毕竟EJB开反

相关文章

读者评论

  • 共0条 分0页

发表评论

  • 昵称:
  • 内容: