EJB)。一个应用程序客户端直接访问运行在业务层上的EJB,如果应用程序授权,它可以打开一个HTTP连接来与一个运行在Web 层的Servlet 建立通信。
2.2 Web层
Web层,主要功能是使用JSP页面和Servlet生成Web页面及Web页面中的动态内容,动态内容的来源是数据库。Web层也要负责把从客户端传来的Web页面中的请求打包发送到业务层中的EJB进行处理以及接收处理后的返回信息。
J2EE的Web组件可以是Servlet或JSP页面。在应用程序组装过程中,静态HTML页面和Applet也可以一起打包成Web组件,但这并不是J2EE规范所认可的Web组件。Servlet 是一个Java编程语言类,它可以动态地处理请求并作出响应,JSP页面是一个基于文本的
文档,它以Servlet的方式执行,但是它可以更方便地建立静态内容。和客户层一样,Web层也可以包含一个JavaBean组件以管理用户的输入,并将输入发送到运行在业务层上的EJB 来进行处理。
2.3 业务层
业务代码是指那些由位于业务层的企业Bean(EJB)执行的逻辑,它们能够解决或满足特定的商业领域的一些需求。有三种不同类型的企业Bean:会话Bean、实体Bean和消息驱动Bean。会话Bean代表客户一次短暂的会话过过程,当客户执行完成后,会话Bean以及它所包含的数据也随之消失。实体Bean代表的是持久的数据,即存储在数据库表中的一行记录,即使客户终止或者服务器关闭,在J2EE底层的会服务确保实体Bean的数据被保存下来。
业务层代码的逻辑用来满足银行、零售、金融等特殊商务领域的需要,由运行在业务层上的enterprise bean进行处理。下图表明了一个enterprise bean是如何从客户端程序接收数据,进行处理(如果必要的话),并发送到EIS 层储存的,这个过程也可以逆向进行。有三种企业级的bean:会话(session)beans,实体(entity)beans,和消息驱动(message-driven)beans。会话bean表示与客户端程序的临时交互。当客户端程序执行完后,会话bean和相关数据就会消失。相反,实体bean表示数据库的表中一行永久的记录。当客户端程序中止或服务器关闭时,就会有潜在的服务保证实体bean的数据得以保存。消息驱动 bean结合了会话bean和 JMS的消息监听器的特性,允许一个业务层组件异步接收JMS消息。
2.4 企业信息系统层
企业信息系统层(EIS层)是运行在企业信息系统服务器(EIS服务器)上的企业信息系统(Enterprise Information System)层软件(EIS Tier),EIS层处理的可以仅仅是一个数据库,也可以包括一些数据库处理的基本业务逻辑。
EIS处理企业信息系统的软件,包括企业组织结构系统,例如企业资源计划(ERP)、大型的事务处理、数据库系统及其他历史上遗留下来的信息系统。
3. J2EE主要技术
J2EE技术的基础就是核心Java平台或Java 2平台的标准版,J2EE不仅巩固了标准版中的许多优点,同时还提供了对 EJB、Java Servlets API、JSP以及XML技术的全面支持。其最终目的就是成为一个能够使企业开发者大幅缩短投放市场时间的体系结构。
J2EE具有13种核心技术:JDBC, JNDI, EJBS, RMI, JSP, JAVA SERVLETS, XML, JMS, JAVA IDL, JTS, JTA, JAVA MAIL 和 JAF,接下来将对这些技术做一一简介。
3.1 JDBC
JDBC API以一种统一的方式来对各种各样的数据库进行存取。和ODBC一样,JDBC为开发人员隐藏了不同数据库的不同特性。另外,由于JDBC建立在JAVA的基础上,因此还提供了数据库存取的平台独立性。JDBC定义了JDBC-ODBC BRIDGE、JDBC-NATIVE DRIVER BRIDGE、JDBC-NETWORK BRIDGE和PURE JAVA DRIVER这4种不同的驱动程序。WEBLOGIC服务器为一些通常的数据库提供了JDBC驱动程序,包括ORACLE, S