Java EE(Java Platform Enterprise Edition)是sun公司(2009年4月20日甲骨文以交易价格达74亿美元现金收购Sun微系统公司)推出的企业级应用程序版本。这个版本以前称为 J2EE。能够帮助我们开发和部署可移植、健壮、可伸缩且安全的服务器端 Java应用程序。Java EE 是在 Java SE 的基础上构建的,它提供Web 服务、组件模型、管理和通信 API,可以用来实现企业级的面向服务体系结构(service-oriented architecture,SOA)和 Web 2.0应用程序。
JavaEE应用分层模型
1. Domain Object (领域对象)层:此层由系列的POJO(Plain Old Java Object,普通的,传统的Java对象)组成,这些对象是该系统的Domain Object,往往包含了各自所需要实现的业务逻辑方法;
2. DAO (Data Access Object,数据访问对象)层:此层有系列的DAO组件组成,这些DAO实现了对数据库的创建、查询、更新和删除(CRUD)等原子操作;
3. 业务逻辑层:此层由系列业务逻辑对象组成,这些业务逻辑对象实现了系统所需要的业务逻辑方法。这些业务逻辑方法可能仅仅用于暴露Domain Ojbect对象所实现的业务逻辑方法,也可能是以来DAO组件实现的业务逻辑方法;
4. 控制层:此层由系列控制器组成,这些控制系用于拦截用户请求,并调用业务逻辑组件的业务逻辑方法,处理用户请求,并根据处理结果转发到不同的表现层组件;
5. 表现层:此层由系列的JSP页面、Velocity页面、PDF文档视图等视图组件组成,负责收集用户请求,并将显示处理结果;
JavaEE应用组件
1. 表现层组件:主要负责收集用户输入数据,或者向客户显示系统状态。常用的表现层技术有Jsp,Velocity,FreeMarker和Tapestry,或者使用普通的应用程序充当充当表现层组件,甚至可以是小型智能设备
2. 控制器组件:对于JavaEE的MVC框架而言,框架提供一个前端的核心控制器来拦截用户的请求并转发给用户实现的控制器组件。这些用户实现的控制器负责处理调用业务逻辑方法,处理用户请求。
3. 业务逻辑组件:系统的核心组件,实现系统的业务逻辑。
4. DAO组件:Data Access Object,数据访问对象。提供Domain Object基本的创建、查询、更新和删除等操作。
5. 领域对象组件:Domain Object抽象了系统的对象模型。
常用的JavaEE服务器
1.WEB服务器:
1.1 Tomcat:开源,与Java结合的最好,是Sun官方推荐的Jsp服务器。
1.2 Jetty:可作为一个嵌入式服务器(如果在应用中加入Jetty的jar包,应用可在代码中对外提供Web服务)。
1.3 Resin:目前最快的Jsp、Servlet运行平台,支持EJB。
2. JavaEE服务器,相对于WEB服务器,JavaEE服务器支持更多的JavaEE特性,例如分布式事务、EJB容器。
2.1 JBoss:开源的JavaEE服务器,目前支持EJB 3.0。
2.2 WebLogic:专业商用JavaEE服务器。
2.3 WebSphere:专业商用JavaEE服务器。
其他相关
1. JSF
2. EJB
3. JPA