J2EE为搭建具有可伸缩性、灵活性、易维护性的商务系统提供了良好的机制。(作用)
J2EE是一套全然不同于传统应用开发的技术架构。其核心是 一个开发指南与一组技术规范;它提供了一个框架、一套标准API,具体由第三方厂商来实现。
J2EE是一个开放标准,有许多第三方厂商开发的中间件支持,它包含了许多组件,从而简化了企业应用的开发。
J2EE平台由一整套服务(SERVICES)、应用程序接口(APIS)和协议构成,它对开发基于WEB的多层应用提供了功能支持。
一、J2EE提出的背景
1、 企业级应用框架的需求
在许多企业级应用中,例如数据库连接、邮件服务、事务处理等都是一些通用企业需求模块,这些模块如果每次再开发中都由开发人员来完成的话,将会造成开发周期长和代码可靠性差等问题。于是许多大公司开发了自己的通用模块服务。这些服务性的软件系列统称为中间件。
2、 为了通用必须要提出规范,不然无法达到通用
在上面的需求基础之上,许多公司都开发了自己的中间件,但其与用户的沟通都各有不同,从而导致用户无法将各个公司不同的中间件组装在一块为自己服务。从而产生瓶颈。于是提出标准的概念。其实J2EE就是基于JAVA技术的一系列标准。
二、J2EE技术架构
支持J2EE的应用服务器有:
IBM WEBSPHERE APPLICATION SERVER,
BEA WEBLOGIC SERVER,
JBOSS,
ORACLE APPLICATION SERVER,
SUN ONE APPLICATION SERVER 等。
三、J2EE的四层模型
运行在客户端机器上的客户层组件
运行在J2EE服务器上的Web层组件
运行在J2EE服务器上的业务逻辑层组件
运行在EIS服务器上的企业信息系统(Enterprise information system)层软件
组件 + 容器 + 服务
J2EE说明书中定义了以下的J2EE组件:
客户层组件:应用客户端程序和applets; web层组件:JSP、Servlet; 业务层组件:EJB. 企业信息系统层: |
这种基于组件,具有平台无关性的J2EE 结构使得J2EE 程序的编写十分简单,因为业务逻辑被封装成可复用的组件,并且J2EE 服务器以容器的形式为所有的组件类型提供后台服务. 因为你不用自己开发这种服务, 所以你可以集中精力解决手头的业务问题。
容器设置定制了J2EE服务器所提供得内在支持,包括安全,事务管理,JNDI(Java Naming and Directory Interface)寻址,远程连接等服务。
J2EE应用组件可以安装部署到以下几种容器中去:
EJB容器管理所有J2EE 应用程序中企业级bean 的执行. enterprise bean 和它们的容器运行在J2EE 服务器上.
Web容器管理所有J2EE 应用程序中JSP页面和Servlet组件的执行. Web 组件和它们的容器运行在J2EE 服务器上
四、J2EE的丰富内容、J2EE的实现方式
J2EE平台由一整套服务(SERVICES)、应用程序接口(APIS)和协议构成,它对开发基于WEB的多层应用提供了功能支持。
支撑J2EE的13种核心技术规范:JDBC, JNDI, EJBS, RMI, JSP, JAVA SERVLETS, XML, JMS, JAVA IDL, JTS, JTA, JAVA MAIL 和 JAF。
SUN设计J2EE的部分起因就是想解决二层化结构的缺陷。于是J2EE定义了一套标准来简化N层企业级应用的开发。它定义了一套标准化的组件,并为这些组件提供了完整的服务。J2EE还自动为应用程序处理了很多实现细节,如安全、多线程等。
J2EE提供了 一个框架、一套标准API——用于开发分布式结构的应用,这个框架的实际实现留给了第三方厂商。部分厂商只是专注于整个J2EE架构中的特定组件,例如APACHE的TOMCAT提供了对JSP和SERVLETS的支持,BEA系统公司则通过其WEBLOGIC应用服务器产品为整个 J2EE规范提供了一个较为完整的实现。
WEBLOGIC服务器已使建立和部署伸缩性较好的分布式应用的过程大为简化。 WEBLOGIC和J2EE代你处理了大量常规的编程任务,包括提供事务服务、安全领域、可靠的消息、名字和目录服务、数据库访问和连接池、线程池、负载 平衡和容错处理等。通过以一种标准、易用的方式提供这些公共服务,象WEBLOGIC服务器这样的产品造就了具有更好伸缩性和可维护性的应用系统,使其为 大量的用户提供了增长的可用性。
在接下来的部分里,我们将描述构成J2EE的各种技术,并且了解WEBLOGIC服务器是如何在一个分布式应用中对它们进行支持的。最常用的J2EE技术应该是JDBC、JNDI、EJB、JSP和SERVLETS,对这些我们将作更仔细的考察。
五、J2EE的发展
J2EE 带动了Java在企业级的发展,但随着一些轻量级组件的出现,J2EE的臃肿和开发难度高的缺点越来越引起了许多人的注意,EJB2.0也被许多人称为累 赘。
随着Spring,Hibernate的不断完善和发展,EJB3.0出现了,成为了未来Java 企业级开发的新的方向。
使用元数据,注释代替传统的配置文件成为了新的热点。JPA更是代替了传统的CMP作为了更加便捷的持久化的方案。