1. 总览
1.1 JAVA EE 6 平台的亮点
JAVA EE 6 平台最重要的目标就是要简化开发过程,通过对不同的组件提供一个公共的基础设施来实现这个目标。 开发人员将从更有产出的注解,更少的XML配置,更多的JAVA简单对象和更简单的打包过程来获益。
JAVA EE 6平台包含了一下一些新的特性:
- 配置:JAVA EE 平台的配置针对于特定的类。 针对下一代的WEB应用程序,JAVA EE 6平台引入了一个轻量级的WEB配置工具,而且是一个完全包含所有JAVA EE 技术的配置。
- 新的技术,包含以下:
a. 针对RESTful Web Services的JAVA API
b. 可管理的Beans
c. 针对JAVA EE平台的上下文和依赖注入
d. Bean的验证
e. 针对容器的JAVA认证服务提供接口
- 针对EJB的新特性
- 针对Servlet的新特性
- 针对JAVA Server Faces组件的新特性
1.2 JAVA EE 应用程序模型
JAVA EE应用程序模型是从Java编程语言和Java虚拟机开始的。 验证过的移植性,安全性和高效的开发方式提供了一个基本的应用程序模型。 JAVA EE 被设计为用来实现企业级的服务,为客户,雇员,供应商,合作伙伴和其它任何提供或使用企业应用程序的人。而这样的企业级应用程序是复杂的,分布式的,多客户的。
为了更好的控制和管理这样的应用程序,中间件应运而生。中间件呈现的环境可以更好的被企业的信息技术部门所控制。 同时,中间件是运行在专属的服务器硬件上可以接触到企业的所有服务。
JAVA EE 应用程序模型定义了一个体系来为不同层的应用程序实现服务,并且这些可伸缩的,可访问的,和可管理的服务是企业级应用程序所需要的。根据这个模型,多层次的服务实现可以被分为以下部分:
- 业务层和呈现层逻辑被开发人员所实现
- 标准的系统服务应该由JAVA EE 平台来提供。
开发人员能依赖于平台提供的服务来提供解决方案来开发解决多层服务中的系统级问题。
1.3 分布式的多层应用程序
针对企业级应用程序,Java EE 平台使用了分布式分层程序模型。应用程序逻辑可以分割成了功能性的组件,这些组件又由安装在不同的机器上Java EE程序组成,而这些Java EE的程序又依赖于所属层次上的Java EE环境。
上面这个图显示出两个Java EE 程序被分成以下几层(不同的应用程序由Java EE组件来展现):
- 运行在客户机器上的客户层组件(Client-tier)
- 运行在Java EE 服务器上的Web层组件(Web-tier)
- 运行在Java EE 服务器上的业务层组件(Business-tier)
- 运行在企业信息系统服务器上的企业信息系统软件(EIS-tier)
尽管Java EE 程序由图上所示的层次构成,但Java EE多层程序一般被认为是一个三层的程序,原因是它们被分布在三个地方:客户机器,Java EE 服务器和数据库或者后台的遗留信息系统。与传统的客户端服务器模型相比,三层程序通过在客户层和后端存储层增加了一层多线程的程序服务器来进行扩展。
1.3.1安全性
尽管其他的企业级应用模型要求每个应用都要有针对平台的安全性衡量,但Java EE安全环境可以在部署的时候定义安全限制。通过Java EE平台这种方式,应用开发人员可以从复杂的安全性实现上解放出来,使得应用的安全性实现更容易移植到其它的服务器上。
Java EE平台提供了标准的声明式的访问控制规则,这些规则可以在部署到服务器上时进行解释执行。同时,Java EE也提供了标准的登录机制,从而应用开发人员不必在他们的应用中实现这些机制。通过这种方式,当相同的应用工作在不同的安全服务器上的时候,不需要修改源代码。
1.3.2 Java EE组件
Java EE 应用由组件构成。一个Java EE的组件是一个自包的功能性单元程序,该程序单元(相关的类和文件)可以装配到Java EE 应用中,并且还可以和其它的组件进行通信。
Java EE规范定义了以下几种组件:
- 运行在客户端的应用程序和Applet。
- Java servlet, JavaServer Faces,JSP这些运行在服务器上的Web组件
- 运行在服务器上的企业级JavaBeans组件(EJB)
Java EE组件是由Java编程语言编写和编译的。Java EE组件和普通的Java标准类的区别是Java EE组件是能被装配到Java EE应用中去的,遵守Java EE规范,同时它们是能部署到Java EE服务器和被服务器管理的。
1.3.3 Java EE 客户端
一个Java EE客户端通常是Web客户端或者应用程序客户端。
- Web客户端
一个Web客户端由两部分组成:
- 动态web页面,由各种各样的标记语言组成(HTML, XML等等),由运行在web层的web组件生成。
- Web浏览器,对从服务器端接收到的页面进行渲染。
Web客户端有时又叫做瘦客户端。瘦客户端通常不需要查询数据库,执行复杂的业务逻辑,或者连接遗留的应用系统。当你使用一个瘦客户端时,你可以把重量级的操作放在企业级Bean上,同时可以利用Java EE服务器上提供的关于安全,速度,服务,可靠性的技术。
- 应用程序客户端
一个应用程序客户端通常运行在客户机器上,为客户提供富用户操作界面,而不是通过一种标记性的语言。典型的应用程序客户端会有一个图形化用户界面,由Swing或者是AWT创建,当然,命令行的接口也是可能的。
应用程序客户端直接访问业务层的企业级Bean。尽管如此,一个应用程序也可以开启HTTP连接来和运行在Web层的Servlet通信。非Java语言实现的应用程序客户端也可以和Java EE服务器交互,使得Java EE服务器可以和遗留系统、客户端、或者是非JAVA语言实现的系统进行通信。
- Applets
Web层的Web页面可以嵌入一个Applet。使用Java编程语言实现的Applet作为一个小巧的客户应用能运行在安装了Java虚拟机的浏览器上。但是,客户端系统需要Java插件和可能的安全策略文件来在浏览器中执行Applet。
当创建一个Web客户程序,使用Web组件API是更好的选择,因为对于客户端而言它们不需要插件或安全策略文件。同时,Web组件把编程从Web页面设计中分离了出来,使得Web应用更整洁和模块化。比如,Web设计人员可以不需要理解Java编程语言语法。
- JavaBean组件体系结构
客户层和服务器层可能会通过JavaBean来管理数据流,如:
- 应用程序客户端或者Applet和运行在Java EE服务器上的组件。
- 服务器组件和数据库。
JavaBean组件并不是Java EE中的组件,JavaBean是通过get,set方法来读取和设置属性的Java对象,这种设计和实现方式非常的简单,是遵从JavaBean的规范的。
- 与Java EE Server通信
上图显示了不同的元素组成的客户层。客户层和运行在Java EE服务器上的业务层进行直接通信,或者通过运行在浏览器中的客户端,经过Web层的页面或者Servlet来和业务层通信。
1.3.4 Web组件
Java EE的Web组件要么是Servlet,要么是使用JavaServer Faces技术创建的web页面或使用JSP技术创建的JSP页面。Servlet是动态处理请求和生成回应的Java编程语言实现的类。JSP页面是基于文本的可以当作Servlet执行,允许以更自然的方式来创建静态内容。JavaServer Faces技术是构建在Servlet和JSP技术上的,为web应用程序提供用户接口组件的框架。
静态HTML页面和Applet绑定在web组件中,但他们并不认为是Java EE规范中所谓的web组件。服务器侧的工具类能将web组件和HTML页面绑定在一起,但它们也不能认为是web组件。
如下图所示,web层也可能包含JavaBean组件来管理用户输入和发送用户输入到业务层的企业Bean上。
1.3.5 业务组件
业务逻辑代码由企业Bean来处理,运行在业务层或者是web层。下图显示了一个企业bean如何从客户程序中接受数据,处理数据,和发送数据到企业信息系统层来存储。企业bean也可以从存储中取数据,处理数据,然后将数据返回给客户程序。
1.3.6 企业信息系统层
企业信息系统层处理软件和包括企业基础设施的EIS系统,例如企业资源规划(ERP)、大型事务处理、数据库系统和其它遗留信息系统。如,Java EE应用程序组件可能需要访问企业信息系统的数据库连接。
相关推荐
一、Java EE概述 Java EE是Sun Microsystems(现已被Oracle收购)推出的标准,它包含了服务器端的多种技术,如Servlet、JSP、EJB、JMS、JTA等。这些技术协同工作,为开发者提供了完整的服务器端开发环境,用于处理...
Java EE实用教程 Struts 2 Hibernate Spring
- **第一部分:准备工作** - 下载并安装NetBeans 5.5.1 + Sun Application Server Pack - 安装NetBeans Visual Web Pack - 设置JavaDB数据库连接,包括创建数据库、设置连接池等步骤。 - 创建“企业项目”:名为...
总的来说,Java EE 6教程是学习和理解企业级Java开发的重要资料,无论你是初学者还是有经验的开发者,都能从中受益。通过阅读这份官方教程,你可以深入了解Java EE 6的各种特性,掌握如何利用这些工具和技术来构建...
Java EE(Java Platform, Enterprise Edition)是Oracle公司提供的一个企业级应用开发平台,它构建在Java SE基础之上,为开发和部署分布式、多层的企业级应用程序提供了丰富的API和工具。本教程旨在帮助读者全面理解...
eclipse java EE 安装教程
### Java EE 6 教程知识点详解 #### 一、Java EE 6 概述 - **名称变更**:从 J2EE 1.6 更名为 Java EE 6,这标志着一个新版本的到来,同时也体现了 Oracle 对 Java 企业级开发框架的新定位。 - **发布时间**:2012...
本教程涵盖了从基础到进阶的Java EE应用开发知识,包括核心的Servlet、JSP、JDBC以及JavaBeans等技术。通过第1章至第6章的实验,学习者将逐步掌握如何构建动态Web项目、处理HTTP请求、实现数据持久化以及进行用户...
《Java EE 6 教程》是Oracle公司于2010年发布的一部详尽指导书籍,旨在帮助开发者深入理解和掌握Java Platform, Enterprise Edition(Java EE)平台的应用开发技术。Java EE 6作为企业级应用开发的标准框架,提供了...
在"Java EE实用教程代码"中,我们可以预期学习到一系列与Java EE相关的编程实践和实例。作者郑阿奇可能通过这些代码来解释和展示如何在实际项目中应用Java EE技术。这通常会涵盖Servlet、JSP、JavaServer Faces (JSF...
《Java EE实用教程(第3版)》是郑阿奇教授编写的一本深入浅出的Java企业级应用开发教程,适合初学者和有一定基础的开发者参考。本教程以PPT形式呈现,虽然不包含源码,但依然能够帮助读者理解和掌握Java EE的核心...
1. **Servlet技术**:Java EE的核心组成部分之一,用于处理HTTP请求。Servlet是Java编写的小型服务器端程序,可以动态生成网页内容。在这些代码中,你可能会看到`doGet()`和`doPost()`方法,它们分别对应HTTP的GET和...
这个教程由郑阿奇编著,旨在为初学者提供一个全面的Java EE基础学习路径,涵盖了一系列实用的技术和概念。 Java EE的核心是构建分布式、多层的企业级应用程序。它包括一系列组件和服务,如Servlet、JSP(JavaServer...
Java EE 6企业级应用开发教程是一门针对高等教育领域的课程,旨在教授学生如何利用Java Enterprise Edition(Java EE)6平台进行高效、可扩展且健壮的企业级应用开发。Java EE 6是Java平台上用于构建分布式、多层...
Java EE大学教程课件及部分源码
【Java+EE基础实用教程】是一本专注于Java企业级应用开发的综合教程,由知名教育专家郑阿奇编著。本书旨在为初学者提供全面、深入的Java EE基础知识,帮助他们快速掌握Java EE开发的核心技能。 Java EE(Enterprise...
《Java EE企业级应用开发教程》第二版,结合Spring、Spring MVC和MyBatis三大框架,为读者提供了全面深入的Java后端开发学习路径。这本书的源码资源旨在帮助开发者通过实践来理解并掌握企业级应用开发的核心技术。 ...
这个Java EE教程是一份详尽的教学资源,旨在帮助学习者掌握在企业环境中使用Java进行软件开发的核心技术。 Java EE教程通常涵盖以下几个关键知识点: 1. **Servlet与JSP**:Servlet是Java EE中的基础组件,用于...
1. **Java EE 6概述**: Java EE 6简化了企业级开发,引入了模块化的架构,包括Web Profile和Full Profile。Web Profile为轻量级应用提供必要的服务,如Servlet、JSP和JSF,而Full Profile包含所有API,适合大型...