- 浏览: 778786 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (256)
- ssh (18)
- webservice (8)
- java基础 (38)
- j2EE方方面面 (17)
- 随意涂鸭!呵呵 (2)
- 数据库 (22)
- work (10)
- XML与XML解析 (9)
- 测试 (2)
- sso (1)
- ldap (6)
- java 模板技术 (4)
- 版本管理 (1)
- 每日小点滴 (26)
- javascript (26)
- Jakarta Commons (2)
- css (6)
- 设计 (3)
- Eclipse插件开发 (3)
- BAP (3)
- web控件 (2)
- java加密解密 (4)
- 调优 (6)
- 界面技术 (3)
- java多线程 (6)
- 互联网 (2)
- 日志管理 (4)
- java调度 (3)
- rest (0)
- Python (2)
- mobile (2)
- 2016的故事 (4)
- Docker (1)
- NOSQL_Hadoop (0)
最新评论
-
promiseloney:
这个女程序员厉害了。。。
JVM调优:GC 参数 -
zxjlwt:
可以通过WebService上传一个文件吗?素人派http:/ ...
webservice传送XML大小估算 -
liaoshaoyang:
写的不错嘛 可以做参考
权限管理设计一 -
aaaaaaaaabaas:
谢谢,对我有帮助
Apache Commons Configuration使用入门 -
Jack_Wilshere:
com.smartdot.pdm.business.corp. ...
java导出txt
J2EE Java2平台企业版(Java 2 Platform,Enterprise Edition)
J2EE是一套全然不同于传统应用开发的技术架构,包含许多组件,主要可简化且规范应用系统的开发与部署,进而提高可移植性、安全与再用价值。
J2EE核心是一组技术规范与指南,其中所包含的各类组件、服务架构及技术层次,均有共通的标准及规格,让各种依循J2EE架构的不同平台之间,存在良好的兼容性,解决过去企业后端使用的信息产品彼此之间无法兼容,导致企业内部或外部难以互通的窘境。
在J2EE架构下,开发人员可依循规范基础,进而开发企业级应用;而不同J2EE供货商,同会支持不同J2EE版本内所拟定的标准,以确保不同J2EE平台与产品之间的兼容性。换言之,植基J2EE架构的应用系统,基本上可部署在不同的应用服务器之上,无需或者只须要进行少量的代码修改,即能大幅提高应用系统的可移植性(Portability)。
J2EE主由升阳(SUN)与IBM等厂商协同业界共同拟定而成的技术规范,以企业与企业之间的运算为导向的JAVA开发环境。J2EE架构定义各类不同组件,如Web Component、EJB Component…等,而各类组件可以再用(reuse),让已开发完成的组件,或者是经由市面采购而得的组件,均能进一步组装成不同的系统。
对于开发人员而言,只需要专注于各种应用系统的商业逻辑与架构设计,至于底层繁琐的程序撰写工作,可搭配不同的开发平台,以让应用系统的开发与部署效率大幅提升。
J2EE的核心规范是 Enterprise Java Beans(EJBs)。EJB依照特性的不同,目前共分为三种,分别是Session Bean、Entity Bean,以及 Message Driven Bean 。其中 Session Bean 与Entity Bean 算是EJB的始祖,这两种EJB规格在EJB 1.x版本推出时就已经存在,而Message Driven Bean则是出现在EJB 2.0的规格之中。
目前业界许多程序设计师,或者是网页设计人员,多利用JSP/Servlet的便利性,进而在J2EE服务器之上开发相关的应用,或是整合公司内部的各种资源。
Java 2平台依照应用领域的不同,共分为三大版本,分别是J2EE、标准版本J2SE(Java 2 Platform, Standard Edition)、微型版本J2ME(Java 2 Platform, Micro Edition),以及Java Card等。
从整体上讲,J2EE是使用Java技术开发企业级应用的一种事实上的工业标准(Sun公司出于其自身利益的考虑,至今没有将Java及其相关技术纳入标准化组织的体系),它是Java技术不断适应和促进企业级应用过程中的产物。Sun推出J2EE的目的是为了克服传统Client/Server模式的弊病,迎合Browser/Server架构的潮流,为应用Java技术开发服务器端应用提供一个平台独立的、可移植的、多用户的、安全的和基于标准的企业级平台,从而简化企业应用的开发、管理和部署。J2EE是一个标准,而不是一个现成的产品。各个平台开发商按照J2EE规范分别开发了不同的J2EE应用服务器,J2EE应用服务器是J2EE企业级应用的部署平台。由于它们都遵循了J2EE规范,因此,使用J2EE技术开发的企业级应用可以部署在各种J2EE应用服务器上。
为了推广并规范化使用J2EE架构企业级应用的体系架构,Sun同时给出了一个建议性的J2EE应用设计模型:J2EE Blueprints。J2EE Blueprints提供了实施J2EE企业级应用的体系架构、设计模式和相关的代码,通过应用J2EE Blueprints所描述的体系模型,能够部分简化架构企业级应用这项复杂的工作。J2EE Blueprints是开发人员设计和优化J2EE组件的基本原则,同时为围绕开发工作进行职能分工给出了指导性策略,以帮助应用开发设计人员合理地分配技术资源。
J2EE组成了一个完整企业级应用的不同部分纳入不同的容器(Container),每个容器中都包含若干组件(这些组件是需要部署在相应容器中的),同时各种组件都能使用各种J2EE Service/API。J2EE容器包括:
◆ Web容器 服务器端容器,包括两种组件JSP和Servlet,JSP和Servlet都是Web服务器的功能扩展,接受Web请求,返回动态的Web页面。Web容器中的组件可使用EJB容器中的组件完成复杂的商务逻辑。
◆ EJB容器 服务器端容器,包含的组件为EJB(Enterprise JavaBeans),它是J2EE的核心之一,主要用于服务器端的商业逻辑的实现。EJB规范定义了一个开发和部署分布式商业逻辑的框架,以简化企业级应用的开发,使其较容易地具备可伸缩性、可移植性、分布式事务处理、多用户和安全性等。
◆ Applet容器 客户端容器,包含的组件为Applet。Applet是嵌在浏览器中的一种轻量级客户端,一般而言,仅当使用Web页面无法充分地表现数据或应用界面的时候,才使用它。Applet是一种替代Web页面的手段,我们仅能够使用J2SE开发Applet,Applet无法使用J2EE的各种Service和API,这是为了安全性的考虑。
◆ Application Client容器 客户端容器,包含的组件为Application Client。Application Client相对Applet而言是一种较重量级的客户端,它能够使用J2EE的大多数Service和API。
通过这四个容器,J2EE能够灵活地实现前面描述的企业级应用的架构。
在View部分,J2EE提供了三种手段:Web容器中的JSP(或Servlet)、Applet和Application Client,分别能够实现面向浏览器的数据表现和面向桌面应用的数据表现。Web容器中的Servlet是实现Controller部分业务流程控制的主要手段;而EJB则主要针对Model部分的业务逻辑实现。至于与各种企业资源和企业级应用相连接,则是依靠J2EE的各种服务和API。
在J2EE的各种服务和API中,JDBC和JCA用于企业资源(各种企业信息系统和数据库等)的连接,JAX-RPC、JAXR和SAAJ则是实现Web Services和Web Services连接的基本支持。
J2EE的各种组件
我们就J2EE的各种组件、服务和API,进行更加详细的阐述,看看在开发不同类型的企业级应用时,根据各自需求和目标的不同,应当如何灵活使用并组合不同的组件和服务。
· Servlet
Servlet是Java平台上的CGI技术。Servlet在服务器端运行,动态地生成Web页面。与传统的CGI和许多其它类似CGI的技术相比,Java Servlet具有更高的效率并更容易使用。对于Servlet,重复的请求不会导致同一程序的多次转载,它是依靠线程的方式来支持并发访问的。
· JSP
JSP(Java Server Page)是一种实现普通静态HTML和动态页面输出混合编码的技术。从这一点来看,非常类似Microsoft ASP、PHP等技术。借助形式上的内容和外观表现的分离,Web页面制作的任务可以比较方便地划分给页面设计人员和程序员,并方便地通过JSP来合成。在运行时态,JSP将会被首先转换成Servlet,并以Servlet的形态编译运行,因此它的效率和功能与Servlet相比没有差别,一样具有很高的效率。
· EJB
EJB定义了一组可重用的组件:Enterprise Beans。开发人员可以利用这些组件,像搭积木一样建立分布式应用。在装配组件时,所有的Enterprise Beans都需要配置到EJB服务器(一般的Weblogic、WebSphere等J2EE应用服务器都是EJB服务器)中。EJB服务器作为容器和低层平台的桥梁管理着EJB容器,并向该容器提供访问系统服务的能力。所有的EJB实例都运行在EJB容器中。EJB容器提供了系统级的服务,控制了EJB的生命周期。EJB容器为它的开发人员代管了诸如安全性、远程连接、生命周期管理及事务管理等技术环节,简化了商业逻辑的开发。EJB中定义了三种Enterprise Beans:
◆ Session Beans
◆ Entity Beans
◆ Message-driven Beans
· JDBC
JDBC(Java Database Connectivity,Java数据库连接)API是一个标准SQL(Structured Query Language,结构化查询语言)数据库访问接口,它使数据库开发人员能够用标准Java API编写数据库应用程序。JDBC API主要用来连接数据库和直接调用SQL命令执行各种SQL语句。利用JDBC API可以执行一般的SQL语句、动态SQL语句及带IN和OUT参数的存储过程。Java中的JDBC相当与Microsoft平台中的ODBC(Open Database Connectivity)。
· JMS
JMS(Java Message Service,Java消息服务)是一组Java应用接口,它提供创建、发送、接收、读取消息的服务。JMS API定义了一组公共的应用程序接口和相应语法,使得Java应用能够和各种消息中间件进行通信,这些消息中间件包括IBM MQ-Series、Microsoft MSMQ及纯Java的SonicMQ。通过使用JMS API,开发人员无需掌握不同消息产品的使用方法,也可以使用统一的JMS API来操纵各种消息中间件。通过使用JMS,能够最大限度地提升消息应用的可移植性。 JMS既支持点对点的消息通信,也支持发布/订阅式的消息通信。
· JNDI
由于J2EE应用程序组件一般分布在不同的机器上,所以需要一种机制以便于组件客户使用者查找和引用组件及资源。在J2EE体系中,使用JNDI(Java Naming and Directory Interface)定位各种对象,这些对象包括EJB、数据库驱动、JDBC数据源及消息连接等。JNDI API为应用程序提供了一个统一的接口来完成标准的目录操作,如通过对象属性来查找和定位该对象。由于JNDI是独立于目录协议的,应用还可以使用JNDI访问各种特定的目录服务,如LDAP、NDS和DNS等。
· JTA
JTA(Java Transaction API)提供了J2EE中处理事务的标准接口,它支持事务的开始、回滚和提交。同时在一般的J2EE平台上,总提供一个JTS(Java Transaction Service)作为标准的事务处理服务,开发人员可以使用JTA来使用JTS。
· JCA
JCA(J2EE Connector Architecture)是J2EE体系架构的一部分,为开发人员提供了一套连接各种企业信息系统(EIS,包括ERP、SCM、CRM等)的体系架构,对于EIS开发商而言,它们只需要开发一套基于JCA的EIS连接适配器,开发人员就能够在任何的J2EE应用服务器中连接并使用它。基于JCA的连接适配器的实现,需要涉及J2EE中的事务管理、安全管理及连接管理等服务组件。
· JMX
JMX(Java Management Extensions)的前身是JMAPI。JMX致力于解决分布式系统管理的问题。JMX是一种应用编程接口、可扩展对象和方法的集合体,可以跨越各种异构操作系统平台、系统体系结构和网络传输协议,开发无缝集成的面向系统、网络和服务的管理应用。JMX是一个完整的网络管理应用程序开发环境,它同时提供了厂商需要收集的完整的特性清单、可生成资源清单表格、图形化的用户接口;访问SNMP的网络API;主机间远程过程调用;数据库访问方法等。
· JAAS
JAAS(Java Authentication and Authorization Service)实现了一个Java版本的标准Pluggable Authentication Module(PAM)的框架。JAAS可用来进行用户身份的鉴定,从而能够可靠并安全地确定谁在执行Java代码。同时JAAS还能通过对用户进行授权,实现基于用户的访问控制。
· JACC
JACC(Java Authorization Service Provider Contract for Containers)在J2EE应用服务器和特定的授权认证服务器之间定义了一个连接的协约,以便将各种授权认证服务器插入到J2EE产品中去。
· JAX-RPC
通过使用JAX-RPC(Java API for XML-based RPC),已有的Java类或Java应用都能够被重新包装,并以Web Services的形式发布。JAX-RPC提供了将RPC参数(in/out)编码和解码的API,使开发人员可以方便地使用SOAP消息来完成RPC调用。同样,对于那些使用EJB(Enterprise JavaBeans)的商业应用而言,同样可以使用JAX-RPC来包装成Web服务,而这个Web Servoce的WSDL界面是与原先的EJB的方法是对应一致的。JAX-RPC为用户包装了Web服务的部署和实现,对Web服务的开发人员而言,SOAP/WSDL变得透明,这有利于加速Web服务的开发周期。
· JAXR
JAXR(Java API for XML Registries)提供了与多种类型注册服务进行交互的API。JAXR运行客户端访问与JAXR规范相兼容的Web Servcices,这里的Web Services即为注册服务。一般来说,注册服务总是以Web Services的形式运行的。JAXR支持三种注册服务类型:JAXR Pluggable Provider、Registry-specific JAXR Provider、JAXR Bridge Provider(支持UDDI Registry和ebXML Registry/Repository等)。
· SAAJ
SAAJ(SOAP with Attachemnts API for Java)是JAX-RPC的一个增强,为进行低层次的SOAP消息操纵提供了支持。
企业级应用示例
下面我们通过假设一个企业应用的J2EE实现,来了解各种组件和服务的应用。假设应用对象是计算机产品的生产商/零售商的销售系统,这个销售系统能够通过自己的网站发布产品信息,同时也能将产品目录传送给计算机产品交易市场。销售系统能够在线接受订单(来自自己的Web网站或者来自计算机产品交易市场),并随后转入内部企业管理系统进行相关的后续处理。
参见图3,这个企业应用可以这种方式架构。该企业应用的核心是产品目录管理和产品定购管理这两个业务逻辑,使用EJB加以实现,并部署在EJB容器中。由于产品目录和定购信息都需要持久化,因此使用JDBC连接数据库,并使用JTA来完成数据库存取事务。
图3 J2EE应用示例
然后使用JSP/Servlet来实现应用的Web表现:在线产品目录浏览和在线定购。为了将产品目录发送给特定的交易市场,使用JMS实现异步的基于消息的产品目录传输。为了使得更多的其它外部交易市场能够集成产品目录和定购业务,需要使用Web Services技术包装商业逻辑的实现。由于产品定购管理需要由公司内部雇员进行处理,因此需要集成公司内部的用户系统和访问控制服务以方便雇员的使用,使用JACC集成内部的访问控制服务,使用JNDI集成内部的用户目录,并使用JAAS进行访问控制。由于产品订购事务会触发后续的企业ERP系统的相关操作(包括仓储、财务、生产等),需要使用JCA连接企业ERP。
最后为了将这个应用纳入到企业整体的系统管理体系中去,使用Application Client架构了一个管理客户端(与其它企业应用管理应用部署在一台机器上),并通过JMX管理这个企业应用。
J2EE是一套全然不同于传统应用开发的技术架构,包含许多组件,主要可简化且规范应用系统的开发与部署,进而提高可移植性、安全与再用价值。
J2EE核心是一组技术规范与指南,其中所包含的各类组件、服务架构及技术层次,均有共通的标准及规格,让各种依循J2EE架构的不同平台之间,存在良好的兼容性,解决过去企业后端使用的信息产品彼此之间无法兼容,导致企业内部或外部难以互通的窘境。
在J2EE架构下,开发人员可依循规范基础,进而开发企业级应用;而不同J2EE供货商,同会支持不同J2EE版本内所拟定的标准,以确保不同J2EE平台与产品之间的兼容性。换言之,植基J2EE架构的应用系统,基本上可部署在不同的应用服务器之上,无需或者只须要进行少量的代码修改,即能大幅提高应用系统的可移植性(Portability)。
J2EE主由升阳(SUN)与IBM等厂商协同业界共同拟定而成的技术规范,以企业与企业之间的运算为导向的JAVA开发环境。J2EE架构定义各类不同组件,如Web Component、EJB Component…等,而各类组件可以再用(reuse),让已开发完成的组件,或者是经由市面采购而得的组件,均能进一步组装成不同的系统。
对于开发人员而言,只需要专注于各种应用系统的商业逻辑与架构设计,至于底层繁琐的程序撰写工作,可搭配不同的开发平台,以让应用系统的开发与部署效率大幅提升。
J2EE的核心规范是 Enterprise Java Beans(EJBs)。EJB依照特性的不同,目前共分为三种,分别是Session Bean、Entity Bean,以及 Message Driven Bean 。其中 Session Bean 与Entity Bean 算是EJB的始祖,这两种EJB规格在EJB 1.x版本推出时就已经存在,而Message Driven Bean则是出现在EJB 2.0的规格之中。
目前业界许多程序设计师,或者是网页设计人员,多利用JSP/Servlet的便利性,进而在J2EE服务器之上开发相关的应用,或是整合公司内部的各种资源。
Java 2平台依照应用领域的不同,共分为三大版本,分别是J2EE、标准版本J2SE(Java 2 Platform, Standard Edition)、微型版本J2ME(Java 2 Platform, Micro Edition),以及Java Card等。
从整体上讲,J2EE是使用Java技术开发企业级应用的一种事实上的工业标准(Sun公司出于其自身利益的考虑,至今没有将Java及其相关技术纳入标准化组织的体系),它是Java技术不断适应和促进企业级应用过程中的产物。Sun推出J2EE的目的是为了克服传统Client/Server模式的弊病,迎合Browser/Server架构的潮流,为应用Java技术开发服务器端应用提供一个平台独立的、可移植的、多用户的、安全的和基于标准的企业级平台,从而简化企业应用的开发、管理和部署。J2EE是一个标准,而不是一个现成的产品。各个平台开发商按照J2EE规范分别开发了不同的J2EE应用服务器,J2EE应用服务器是J2EE企业级应用的部署平台。由于它们都遵循了J2EE规范,因此,使用J2EE技术开发的企业级应用可以部署在各种J2EE应用服务器上。
为了推广并规范化使用J2EE架构企业级应用的体系架构,Sun同时给出了一个建议性的J2EE应用设计模型:J2EE Blueprints。J2EE Blueprints提供了实施J2EE企业级应用的体系架构、设计模式和相关的代码,通过应用J2EE Blueprints所描述的体系模型,能够部分简化架构企业级应用这项复杂的工作。J2EE Blueprints是开发人员设计和优化J2EE组件的基本原则,同时为围绕开发工作进行职能分工给出了指导性策略,以帮助应用开发设计人员合理地分配技术资源。
J2EE组成了一个完整企业级应用的不同部分纳入不同的容器(Container),每个容器中都包含若干组件(这些组件是需要部署在相应容器中的),同时各种组件都能使用各种J2EE Service/API。J2EE容器包括:
◆ Web容器 服务器端容器,包括两种组件JSP和Servlet,JSP和Servlet都是Web服务器的功能扩展,接受Web请求,返回动态的Web页面。Web容器中的组件可使用EJB容器中的组件完成复杂的商务逻辑。
◆ EJB容器 服务器端容器,包含的组件为EJB(Enterprise JavaBeans),它是J2EE的核心之一,主要用于服务器端的商业逻辑的实现。EJB规范定义了一个开发和部署分布式商业逻辑的框架,以简化企业级应用的开发,使其较容易地具备可伸缩性、可移植性、分布式事务处理、多用户和安全性等。
◆ Applet容器 客户端容器,包含的组件为Applet。Applet是嵌在浏览器中的一种轻量级客户端,一般而言,仅当使用Web页面无法充分地表现数据或应用界面的时候,才使用它。Applet是一种替代Web页面的手段,我们仅能够使用J2SE开发Applet,Applet无法使用J2EE的各种Service和API,这是为了安全性的考虑。
◆ Application Client容器 客户端容器,包含的组件为Application Client。Application Client相对Applet而言是一种较重量级的客户端,它能够使用J2EE的大多数Service和API。
通过这四个容器,J2EE能够灵活地实现前面描述的企业级应用的架构。
在View部分,J2EE提供了三种手段:Web容器中的JSP(或Servlet)、Applet和Application Client,分别能够实现面向浏览器的数据表现和面向桌面应用的数据表现。Web容器中的Servlet是实现Controller部分业务流程控制的主要手段;而EJB则主要针对Model部分的业务逻辑实现。至于与各种企业资源和企业级应用相连接,则是依靠J2EE的各种服务和API。
在J2EE的各种服务和API中,JDBC和JCA用于企业资源(各种企业信息系统和数据库等)的连接,JAX-RPC、JAXR和SAAJ则是实现Web Services和Web Services连接的基本支持。
J2EE的各种组件
我们就J2EE的各种组件、服务和API,进行更加详细的阐述,看看在开发不同类型的企业级应用时,根据各自需求和目标的不同,应当如何灵活使用并组合不同的组件和服务。
· Servlet
Servlet是Java平台上的CGI技术。Servlet在服务器端运行,动态地生成Web页面。与传统的CGI和许多其它类似CGI的技术相比,Java Servlet具有更高的效率并更容易使用。对于Servlet,重复的请求不会导致同一程序的多次转载,它是依靠线程的方式来支持并发访问的。
· JSP
JSP(Java Server Page)是一种实现普通静态HTML和动态页面输出混合编码的技术。从这一点来看,非常类似Microsoft ASP、PHP等技术。借助形式上的内容和外观表现的分离,Web页面制作的任务可以比较方便地划分给页面设计人员和程序员,并方便地通过JSP来合成。在运行时态,JSP将会被首先转换成Servlet,并以Servlet的形态编译运行,因此它的效率和功能与Servlet相比没有差别,一样具有很高的效率。
· EJB
EJB定义了一组可重用的组件:Enterprise Beans。开发人员可以利用这些组件,像搭积木一样建立分布式应用。在装配组件时,所有的Enterprise Beans都需要配置到EJB服务器(一般的Weblogic、WebSphere等J2EE应用服务器都是EJB服务器)中。EJB服务器作为容器和低层平台的桥梁管理着EJB容器,并向该容器提供访问系统服务的能力。所有的EJB实例都运行在EJB容器中。EJB容器提供了系统级的服务,控制了EJB的生命周期。EJB容器为它的开发人员代管了诸如安全性、远程连接、生命周期管理及事务管理等技术环节,简化了商业逻辑的开发。EJB中定义了三种Enterprise Beans:
◆ Session Beans
◆ Entity Beans
◆ Message-driven Beans
· JDBC
JDBC(Java Database Connectivity,Java数据库连接)API是一个标准SQL(Structured Query Language,结构化查询语言)数据库访问接口,它使数据库开发人员能够用标准Java API编写数据库应用程序。JDBC API主要用来连接数据库和直接调用SQL命令执行各种SQL语句。利用JDBC API可以执行一般的SQL语句、动态SQL语句及带IN和OUT参数的存储过程。Java中的JDBC相当与Microsoft平台中的ODBC(Open Database Connectivity)。
· JMS
JMS(Java Message Service,Java消息服务)是一组Java应用接口,它提供创建、发送、接收、读取消息的服务。JMS API定义了一组公共的应用程序接口和相应语法,使得Java应用能够和各种消息中间件进行通信,这些消息中间件包括IBM MQ-Series、Microsoft MSMQ及纯Java的SonicMQ。通过使用JMS API,开发人员无需掌握不同消息产品的使用方法,也可以使用统一的JMS API来操纵各种消息中间件。通过使用JMS,能够最大限度地提升消息应用的可移植性。 JMS既支持点对点的消息通信,也支持发布/订阅式的消息通信。
· JNDI
由于J2EE应用程序组件一般分布在不同的机器上,所以需要一种机制以便于组件客户使用者查找和引用组件及资源。在J2EE体系中,使用JNDI(Java Naming and Directory Interface)定位各种对象,这些对象包括EJB、数据库驱动、JDBC数据源及消息连接等。JNDI API为应用程序提供了一个统一的接口来完成标准的目录操作,如通过对象属性来查找和定位该对象。由于JNDI是独立于目录协议的,应用还可以使用JNDI访问各种特定的目录服务,如LDAP、NDS和DNS等。
· JTA
JTA(Java Transaction API)提供了J2EE中处理事务的标准接口,它支持事务的开始、回滚和提交。同时在一般的J2EE平台上,总提供一个JTS(Java Transaction Service)作为标准的事务处理服务,开发人员可以使用JTA来使用JTS。
· JCA
JCA(J2EE Connector Architecture)是J2EE体系架构的一部分,为开发人员提供了一套连接各种企业信息系统(EIS,包括ERP、SCM、CRM等)的体系架构,对于EIS开发商而言,它们只需要开发一套基于JCA的EIS连接适配器,开发人员就能够在任何的J2EE应用服务器中连接并使用它。基于JCA的连接适配器的实现,需要涉及J2EE中的事务管理、安全管理及连接管理等服务组件。
· JMX
JMX(Java Management Extensions)的前身是JMAPI。JMX致力于解决分布式系统管理的问题。JMX是一种应用编程接口、可扩展对象和方法的集合体,可以跨越各种异构操作系统平台、系统体系结构和网络传输协议,开发无缝集成的面向系统、网络和服务的管理应用。JMX是一个完整的网络管理应用程序开发环境,它同时提供了厂商需要收集的完整的特性清单、可生成资源清单表格、图形化的用户接口;访问SNMP的网络API;主机间远程过程调用;数据库访问方法等。
· JAAS
JAAS(Java Authentication and Authorization Service)实现了一个Java版本的标准Pluggable Authentication Module(PAM)的框架。JAAS可用来进行用户身份的鉴定,从而能够可靠并安全地确定谁在执行Java代码。同时JAAS还能通过对用户进行授权,实现基于用户的访问控制。
· JACC
JACC(Java Authorization Service Provider Contract for Containers)在J2EE应用服务器和特定的授权认证服务器之间定义了一个连接的协约,以便将各种授权认证服务器插入到J2EE产品中去。
· JAX-RPC
通过使用JAX-RPC(Java API for XML-based RPC),已有的Java类或Java应用都能够被重新包装,并以Web Services的形式发布。JAX-RPC提供了将RPC参数(in/out)编码和解码的API,使开发人员可以方便地使用SOAP消息来完成RPC调用。同样,对于那些使用EJB(Enterprise JavaBeans)的商业应用而言,同样可以使用JAX-RPC来包装成Web服务,而这个Web Servoce的WSDL界面是与原先的EJB的方法是对应一致的。JAX-RPC为用户包装了Web服务的部署和实现,对Web服务的开发人员而言,SOAP/WSDL变得透明,这有利于加速Web服务的开发周期。
· JAXR
JAXR(Java API for XML Registries)提供了与多种类型注册服务进行交互的API。JAXR运行客户端访问与JAXR规范相兼容的Web Servcices,这里的Web Services即为注册服务。一般来说,注册服务总是以Web Services的形式运行的。JAXR支持三种注册服务类型:JAXR Pluggable Provider、Registry-specific JAXR Provider、JAXR Bridge Provider(支持UDDI Registry和ebXML Registry/Repository等)。
· SAAJ
SAAJ(SOAP with Attachemnts API for Java)是JAX-RPC的一个增强,为进行低层次的SOAP消息操纵提供了支持。
企业级应用示例
下面我们通过假设一个企业应用的J2EE实现,来了解各种组件和服务的应用。假设应用对象是计算机产品的生产商/零售商的销售系统,这个销售系统能够通过自己的网站发布产品信息,同时也能将产品目录传送给计算机产品交易市场。销售系统能够在线接受订单(来自自己的Web网站或者来自计算机产品交易市场),并随后转入内部企业管理系统进行相关的后续处理。
参见图3,这个企业应用可以这种方式架构。该企业应用的核心是产品目录管理和产品定购管理这两个业务逻辑,使用EJB加以实现,并部署在EJB容器中。由于产品目录和定购信息都需要持久化,因此使用JDBC连接数据库,并使用JTA来完成数据库存取事务。
图3 J2EE应用示例
然后使用JSP/Servlet来实现应用的Web表现:在线产品目录浏览和在线定购。为了将产品目录发送给特定的交易市场,使用JMS实现异步的基于消息的产品目录传输。为了使得更多的其它外部交易市场能够集成产品目录和定购业务,需要使用Web Services技术包装商业逻辑的实现。由于产品定购管理需要由公司内部雇员进行处理,因此需要集成公司内部的用户系统和访问控制服务以方便雇员的使用,使用JACC集成内部的访问控制服务,使用JNDI集成内部的用户目录,并使用JAAS进行访问控制。由于产品订购事务会触发后续的企业ERP系统的相关操作(包括仓储、财务、生产等),需要使用JCA连接企业ERP。
最后为了将这个应用纳入到企业整体的系统管理体系中去,使用Application Client架构了一个管理客户端(与其它企业应用管理应用部署在一台机器上),并通过JMX管理这个企业应用。
发表评论
-
tomcat quartz 被触发两次
2013-01-05 17:45 1552tomcat服务器中自启动导致quartz定时被触发两次 ... -
c:forEach 取 map的值
2011-11-15 13:31 3649<c:forEach var=& ... -
servlce与filter的url-pattern介绍
2011-10-14 09:20 1718url-pattern格式: 1、 以”/’开头和以”/*” ... -
Ehcache学习二:Ehcache的配置文件介绍
2011-10-02 16:43 5427<ehcache xmlns:xsi="htt ... -
Ehcache学习一:JDBC caching
2011-10-02 16:20 3884Ehcache很容易加入到已经使用的JDBC代码中,一般在两种 ... -
Ant 扩展(一)
2010-10-18 13:13 6675一、为啥要用Ant-Contrib ? 因为要做一 ... -
JSP页面取当前日期 oracle导入导出 branch与tag
2009-02-19 09:33 1518<%=new java.text.SimpleDateF ... -
J2EE开源项目
2008-06-23 17:02 3971主要就我所了解的J2 ... -
EL表达式
2008-05-14 13:10 5326EL表達式2008-01-16 12:49 一、EL简介 1. ... -
EAI简单介绍
2008-02-27 10:54 1883什么是EAI(enterprise application i ... -
先判断对象是否为NULL再进行操作
2007-12-10 09:14 2421<% Boolean isErr = false ... -
给JSP页面加过滤器
2007-12-10 09:09 3696很简单的一个功能,如果用户没有登录之前访问其他页面时转到登录页 ... -
《精通J2EE网络编程》中讲的JNDI 6.3总结
2007-11-28 16:30 14116.3 小结 JNDI(命名和目录接口)是一个为Java应用 ... -
《精通J2EE网络编程》中讲的JNDI 6.2 使用JNDI
2007-11-28 16:24 15956.2 使用JNDI 6.2.1 JNDI服务提供者 不使 ... -
《精通J2EE网络编程》中讲的JNDI 6.1 什么是JNDI
2007-11-28 16:22 14976.1 什么是JNDI Java命名和目录接口(the J ... -
jndi
2007-11-28 15:43 1570JNDI是J2EE中一个很重要的标准,通常我们是在J2EE编程 ...
相关推荐
"J2EE介绍" J2EE(Java 2 Platform, Enterprise Edition)是 Java 平台的企业版,它提供了一系列的技术规范和API,用于开发大型企业级应用程序。J2EE 是基于 Java 语言的,它提供了一个完整的解决方案,用于开发...
J2eeIntro、J2EE介绍,英文版
J2EE 详细简介 J2EE(Java 2 Platform, Enterprise Edition)是 Java 2 平台企业版的简称,是一种利用 Java 2 平台来简化企业解决方案的开发、部署和管理相关的复杂问题的体系结构。J2EE 核心是一组技术规范与指南...
**J2EE(Java 2 Platform, Enterprise Edition)**是一个由Oracle公司提供的企业级应用程序开发平台,它基于Java编程语言,旨在为构建分布式、多层的企业应用系统提供了一个强大、可扩展且标准的框架。本PPT资料将...
NULL 博文链接:https://zhou-he.iteye.com/blog/665440
J2EE 体系架构介绍 J2EE(Java 2 Platform, Enterprise Edition)是一种用于开发企业级应用程序的Java平台。J2EE 体系架构是指基于 J2EE 平台所构建的应用程序架构。 HandsOnJ2EE 体系架构介绍 J2EE 体系架构是...
**J2EE包介绍** J2EE(Java 2 Platform, Enterprise Edition)是Java平台的企业版,用于构建和部署分布式企业级应用程序。J2EE包通常包含一系列的库和技术,这些技术涵盖了从数据库连接、事务处理到Web服务等多个...
关于j2ee的介绍包括一些J2EE初学者需要注意的问题和基本的框架
**Java EE(J2EE)概述** Java EE(以前称为J2EE)是Java平台企业版的简称,它是一个开放源代码的开发框架,用于构建和部署可扩展、多层的服务器端应用程序。这个框架提供了丰富的API和服务,旨在简化企业级软件...
Java 2,企业版(J2EE)是一个广泛采用的企业级开发框架,旨在为软件开发者提供集成、可扩展的架构,以构建复杂的企业应用程序。自推出以来,J2EE已经成为了许多企业的首选平台,尽管其学习曲线较为陡峭。本文将深入...
j2ee技术介绍-主要是介绍J2EE的框架,对不了解框架的人会有一定的帮助。
- **J2EE容器**:详细介绍了J2EE平台提供的不同类型的容器及其作用。 - **打包J2EE组件**:讲解了如何将Java组件打包成可部署的单元。 - **开发者角色**:定义了在J2EE项目中不同开发者的职责范围。 - **本书...
Java 企业版(Java 2 Platform, Enterprise Edition,简称 J2EE)是一个用于开发和部署企业级应用程序的开放平台标准,由 Sun Microsystems(现已被 Oracle 收购)于1999年推出。J2EE 提供了一整套服务、接口和组件...
Java 2 Platform, Enterprise Edition(J2EE)是Oracle公司推出的一个开放的、基于标准的平台,用于构建、部署和管理分布式、Web化的、以服务器为中心的企业级应用程序。这个平台旨在简化开发过程,并提供标准API,...
- **J2EE介绍**:J2EE平台包含一组服务、APIs和协议,用于开发可部署在多层架构中的分布式应用程序,特别适合大型企业级应用。 - **JSP(JavaServer Pages)**:JSP是动态网页生成技术,允许开发者将HTML与Java...
J2EE是针对web服务、业务对象、数据访问和消息传送的一组规范。这组应用编程接口(API)确定了web应用与驻留它们的服务器之间的通信方式。J2EE注重两件事,一是建立标准,使web应用的部署与服务器无关;二是使服务器...
#### 一、J2EE基础知识介绍 J2EE(Java 2 Platform, Enterprise Edition)是Sun Microsystems为简化企业级应用开发而提出的一套技术标准,它提供了构建分布式系统的基础框架。在J2EE环境中,开发者可以利用多种组件...
### J2EE规范与中间件介绍 #### 一、J2EE概述 J2EE(Java 2 Platform, Enterprise Edition)是一种专为企业级应用开发设计的技术框架,它旨在通过简化和标准化应用程序的开发与部署过程,提高应用系统的可移植性、...
### J2EE指南知识点梳理 #### 一、J2EE平台简介 ...综上所述,《J2EE指南》不仅介绍了J2EE平台的基本概念和技术细节,还提供了详细的开发步骤和实践案例,旨在帮助程序员快速掌握J2EE开发的核心技能。
J2EE概述和开源软件介绍.ppt