-------------------------------------------------------------
1 概述
-------------------------------------------------------------
1.1 对比
J2ME:功能非常有限,用于嵌入式设备
J2SE:包含原始的核心类库,用于桌面应用程序和浏览器中的Applet
J2EE:对现有和新技术的集成加速应用开发。功能非常全面,用于数据处理和服务器端应用
1.2 目的
将复杂的问题分布到分散的平台上
将复杂软件模块化
将大部分成本集中于解决商业软件上的需要上
编写一次,随处运行
1.3 组成
服务
API
协议
1.4 体系结构
1.4.1四层
客户层:用于提供用户接口
Web浏览器
Applet
应用客户端
J2EE应用服务器:提供客户机服务和商业逻辑
表示层(Web容器)
JSP
Servlet
JavaBean
业务逻辑层(EJB容器)
实体EJB
会话EJB
消息驱动Bean
企业信息系统层:提供对数据的管理
数据库
目录服务
消息队列
ERP
其他遗留系统
1.4.2 容器/组件
容器
EJB应用程序容器
Web应用程序容器
小程序容器
应用程序客户机容器
组件
资源是适配器
Web应用程序
JavaServlet Web组件
JSPWeb组件
EJB组件
应用程序客户机
小程序
1.5 角色
EJB提供者
应用程序装配者
部署者
EJB服务提供者
EJB容器提供者
系统管理员
-------------------------------------------------------------
2 规范
-------------------------------------------------------------
JDBC
JDBCAPI为访问不同的数据库提供了一种统一的途径,象ODBC一样,JDBC对开发者屏蔽了一些细节问题,另外,JDBC对数据库的访问也具有平台无关性。
JNDI
JNDIAPI被用于执行名字和目录服务。它提供了一致的模型来存取和操作企业级的资源如DNS和LDAP,本地文件系统,或应用服务器中的对象。
EJB
EJB提供了一个框架来开发和实施分布式商务逻辑,由此很显著地简化了具有可伸缩性和高度复杂的企业级应用的开发。EJB规范定义了EJB组件在何时如何与它们的容器进行交互作用。
容器负责提供公用的服务,例如目录服务、事务管理、安全性、资源缓冲池以及容错性。但这里值得注意的是,EJB并不是实现J2EE的唯一途径。正是由于J2EE的开放性,使得有的厂商能够以一种和EJB平行的方式来达到同样的目的。
RMI
正如其名字所表示的那样,RMI协议调用远程对象上方法。它使用了序列化方式在客户端和服务器端传递数据。RMI是一种被EJB使用的更底层的协议。
JavaIDL/CORBA
在JavaIDL的支持下,开发人员可以将Java和CORBA集成在一起。他们可以创建Java对象并使之可在CORBA ORB中展开,或者他们还可以创建Java类并作为和其它ORB一起展开的CORBA对象的客户。后一种方法提供了另外一种途径,通过它Java可以被用于将你的新的应用和旧的系统相集成。
JSP
JSP页面由HTML代码和嵌入其中的Java代码所组成。服务器在页面被客户端所请求以后对这些Java代码进行处理,然后将生成的HTML页面返回给客户端的浏览器。
JavaServlet
Servlet是一种小型的Java程序,它扩展了Web服务器的功能。作为一种服务器端的应用,当被请求时开始执行,这和CGIPerl脚本很相似。Servlet提供的功能大多与JSP类似,不过实现的方式不同。JSP通常是大多数HTML代码中嵌入少量的Java代码,而servlets全部由Java写成并且生成HTML。
XML
XML是一种可以用来定义其它标记语言的语言。它被用来在不同的商务过程中共享数据。XML的发展和Java是相互独立的,但是,它和Java具有的相同目标正是平台独立性。通过将Java和XML的组合,您可以得到一个完美的具有平台独立性的解决方案。
JMS
JMS是用于和面向消息的中间件相互通信的应用程序接口(API)。它既支持点对点的域,有支持发布/订阅(publish/subscribe)类型的域,并且提供对下列类型的支持:经认可的消息传递,事务型消息的传递,一致性消息和具有持久性的订阅者支持。JMS还提供了另一种方式来对您的应用与旧的后台系统相集成。
JTA
JTA定义了一种标准的API,应用系统由此可以访问各种事务监控。
JTS
JTS是CORBAOTS事务监控的基本的实现。JTS规定了事务管理器的实现方式。该事务管理器是在高层支持Java Transaction API(JTA)规范,并且在较底层实现OMG OTSspecification的Java映像。JTS事务管理器为应用服务器、资源管理器、独立的应用以及通信资源管理器提供了事务服务。
JavaMail
JavaMail是用于存取邮件服务器的API,它提供了一套邮件服务器的抽象类。不仅支持SMTP服务器,也支持IMAP服务器。
JAF
JavaMail利用JAF来处理MIME编码的邮件附件。MIME的字节流可以被转换成Java对象,或者转换自Java对象。大多数应用都可以不需要直接使用JAF。