J2EE是一套全然不同于传统应用开发的技术架构,包含许多组件,主要可简化且规范应用系统的开发与部署,进而提高可移植性、安全与再用价值。
J2EE就是基于Java技术的一系列标准。其包含13种技术规范,下面分别来看这13种技术规范:
1.JDBC
(java DatabaseConnectivity),JDBC API以一个统一的方式访问各种数据库。与ODBC类似,JDBC将开发者和私有数据库之间的问题隔离开来。由于它建立在Java上,因此JDBC可以提供平台无关的数据库访问。
2.JNDI
Java命名和目录接口(Java Naming and Directory Interface,JNDI).
JNDI是J2EE的一个API,提供了一套标准的接口,以定位用户、机器、网络、对象、以及服务。它是为了对高级网络应用开发中的使用的目录基础结构的访问,提供了一种标准的API来访问类型不同的目录。
3.EJB
企业Java Beans(Enterprise Java Beans,EJB)。
EJB是J2EE中一个引人注目的技术,它提供了一个架构来开发和配置到客户端的分布式商业逻辑,因此可以明显减少开发扩展性、高度复杂企业应用的难度。EJB规范定义了EJB组件应该如何及何时与它们的容器交互。由容器来负责提供普通的服务,例如目录服务、事务管理、安全、资源池和容错。
4.RMI
RMI(Remote Method Invoke)-远程调用方法,是java的一组用户开发分布式应用程序的API。
通过该RMI机制,可以实现程序组件在不同操作系统之间的通信。它是一种被EJB使用的更底层的协议。
RMI使用了序列化方式在客户端和服务器端传递数据, 这样,我们就可以在远程方式下编写和使用对象,而不必知道它们实际上是远程的对象。
5.Java IDL/CORBA
公共对象请求代理结构(Common Object Request BrokerArchitecture)。
通过Java的IDL支持,开发者可以将Java与CORBA集成。他们可以创建能配置在一个CORBA ORB中的Java对象,也可以创建作为配置在其它ORB内的CORBA对象客户端的Java类。对于通过Java将新应用和以前的系统集成到一起,后者提供了一个另外的方法。
6.JSP
(JavaServer Pages)JSP是平台无关的。它帮助web内容开发者使用相对较少的代码就可以创建动态的网页。
JavaServer Page是HTML代码和Java代码的混合。在客户请求页面的时候,服务器就会处理Java代码,然后返回HTML页面给浏览器。
7.Java servlets
Servlet是一种小型的Java程序,它可以扩展Web服务器的功能。
servlets提供的功能大部分JSP相同,它采用的是一个有点不同的方法。JSP中大部分是HTML代码,其中只有少量的Java代码,而servlets则相反,它完全使用Java编写,并且产生HTML代码。
8.XML
扩展标记语言(Extensible Markup Language,XML).
XML是一个用来定义其它标记语言的的语言。它可以被用来当做在不同的商业之间的数据共享。XML的发展是与Java分开的;但是,它和Java的目标都是为了与平台无关。通过将Java与XML结合,你可以得到一个完全与平台无关的解决方案。
9.JMS
Java信使服务(Java Messaging Service,JMS)。
JMS是一个用来和面向信息的中间件相互通信的API。它不但能够支持点对点的域,也可以支持发布/订阅域,并且提供对担保信息的传送、事务信息的传送、持久信息和durable subscribers的支持。对于将现在需要的应用和以前的backend系统集成,JMS提供了另外一个方法。
10.JTA
Java事务体系,定义了一种标准API,应用系统由此可以访问各种事务监控。
11.JTS
Java事务服务,JTS是CORBA OTS事务监控器的一个基本实现。
JTS指定了一个事务管理器的实现,这个管理器在一个高级别上支持Java事务API(JTA)规范,并且在一个低级别上实现了OMG OTS规范的Java映射。一个JTS事务管理器为应用服务器、资源管理器、standalone应用和通信资源管理器提供事务服务。
12.JavaMail
JavaMail是一个用来访问邮件服务器的API。
JavaMail API提供了一套抽象类来模型化一个邮件系统。支持SMTP和IMAP服务器。
13.JAF
JavaBeans激活架构(JavaBeans Activation Framework,JAF)。
JAF是一个专用的数据处理框架,它用于封装数据,并为应用程序提供访问和操作数据的接口。JavaMail通过使用JAF来处理MIME加密的邮件附件。MIME字节流和Java对象间可以互相转化。大多数的应用无需要直接使用JAF。