一、简介



J2EE(Java 2 Platform Standard Edition)是Java2的企业版,是Java语言的一部分,另外两个是J2SE和J2ME。主要用于分布式的网络程序的开发,为大企业主机级的计算机类型而设计的。


J2EE包含许多组件,主要可简化且规范应用系统的开发和部署,提高可移植性、安全和再用价值。它的核心是一组技术规范与指南,其中所包含的各类组件、服务架构及技术层次,均有共同的标准及规格。其实也就是为不同的企业产品制定统一标准,实现互相访问的兼容问题。


二、J2EE体系结构


  

j2ee 应用架构 j2ee架构包含哪些_j2ee 应用架构


J2EE的组件分为三部分:客户端是应用程序和Applet;服务端的Web组件是Java Servlet、JSP等、服务器上的业务组件是EJB。


三、J2EE的技术规范


1.JDBC(Java Data Base Connectivity)


用于执行SQL语句的Java API,可以为多种关系数据库提供数据库访问的统一路径。具体:与数据建立连接、发送操作数据库的语句、处理结果。这个和我们学过的ODBC很相似,是微软公司开放服务结构中有关数据库的一个组成部分,建立了一组规范,并提供一组对数据库访问的标准API。


2.JNDI(Java Name and Directory Interface)


是一个应用程序设计的API,为开发人员提供了查找和访问各种命名和目录服务的通用、统一的接口。它提供一致的模型来存取和操作企业级的资源DNS和DAP,本地文件系统或应用服务器中的对象。


3.EJB(Enterprise JavaBean)


的核心是部署分布式应用程序,把已经编写好的程序打包放在服务器上执行,具有可扩展性、可用性、可靠性、安全性、分布性,实现Java的最大特点跨平台。EJB定义了服务器端组件是如何被编写以及提供了在组件和管理它们的服务器和组件间的标准架构协议。


4.RMI(Remote Method Invoke)


远程方法调用,使用了序列化在客户端和服务器之间传递数据。能够让在某个Java虚拟机上的对象像调用本机对象一样。任何远程对象都必须直接或间接实现此接口,只有在远程接口中指定的方法才可以实现远程。


5.Java IDL/CORBA


Java IDL技术在Java平台上添加了CORBA(Common Object Request Broker Architecture)功能,提供了基于标准的互操作能力和连接性。Java IDL技术使得分布式的Java Web应用能够通过使用工业标准的IDL和IIOP(Internet Inter-ORB Protocol)来透明地调用远程网络服务的操作。


6.Java Servlet


交互式地浏览和修改数据,生成动态的Web内容,也就是通过DoPost和DoGet方法实现从服务器端将HTML+业务逻辑返回到客户端,如我们在页面上点击一个按钮后相关的内容从服务器上调出后显示的过程。


7.JSP(Java Server Pages)


是一个简化的Servlet,在传统的网页HTML中插入Java程序段,也就是我们在评论一篇博文的时候并非整个页面重新加载显示,只是我们评论的那条语句加载出来,类似于AJAX。


8.XML(Extensible Markup Lanaguage)


用于不同程序间传输存储数据,在配置文件的时候用到过,可以只更改XML中数据就更换不同的数据库和登录账号。


9.JMS(Java  Message Service)


是Java消息服务应用程序接口,是一个Java平台中关于面向消息中间件的API,实现不同应用程序间的异步通信,和JDBC有点类似,不同JDBC是实现数据库间的。


10.JTA(Java Transaction API)


是事务API,具有原子性、一致性、独立性、持久性,也就是保证数据执行的正确性。


11.JTS(Component Transaction Monitor)


组件事务监视器,按照事务性对象的调用方法定义,这样可以使资源透明被征用。

12.JavaMail


JavaMail是用于存取邮件服务器的API,它提供了一套邮件服务器的抽象类.不仅支持SMTP服务器,也支持IMAP服务器。是一个提供给使用Java平台的开发者处理电子邮件有关的编程接口。


13.JAF(JavaBeans Activation Framework)


JAF 是一个平台,是基于java平台的一个扩展,它的好处是:让你利用标准的平台服务,决定一个任意类型的数据,封装并访问它。发现可用的操作,并适用于实体bean来执行操作。


四、总结


J2EE的学习是Java的一个阶段,因为代码敲得比较少,所以很多东西理解起来不是很透出,接下来就是代码的增加,资料的多查了。加油~~