SPModel2 体系结构图 4 华 中 科 技 大 学 硕 士 学 位 论 文2.2 J2EE 概述 J2EE 是 Java 2 Platform Enterprise Edition 的缩写16,是 SUN 公司为了推动基于Java 的服务器端的应用开发而提出的一项技术创新。
该技术旨在将
Java 平台的范围扩展到大规模服务器环境17。
SUN 公司于 1992 年底推出了 Java2 技术和相关的 J2EE规范,其目标是平台无关的、可移植的、支持并发访问的和安全的,完全基于 Java语言的开放服务器端中间件的标准1820。
随着 J2EE 技术的不断成熟,现已逐渐成为企业 Web 应用开发的标准,其最终目的就是使 J2EE 架构成为一个能够使企业开发者大幅度缩短投放市场时间的体系结构。
J2EE 平台最大的特点2123是:它提供了中间层集成框架。
J2EE 典型的体系结构如图 2.3 所示。
客户层 Web层 业务层 信息系统层 浏览器
JSP组件 EJB容器 ERP系统 应用
程序 Servlet组件 EJB组件 数据库 客户端 图 2.3 J2EE 的体系结构图2.3 开源框架相关技术 随着 J2EE 的分层体系结构和开源技术的发展,在架构各层均存在着多种选择方案。
针对项目的具体应用,开发者可以选择任意的框架技术来使用。
本节选取 Struts24框架、Spring25框架和 Hibernate26框架进行阐述和研究,并将它们整合成一个可使用的框架。
2.3.1 Struts 框架 Struts 框架是 Apache 软件基金会 Jakarta 项目组的一个开源项目27。
Struts 是一个基于 Sun J2EE 平台的 MVC 框架,主要是采用 Servlet 和 JSP 技术来实现的28。
图 5 华 中 科 技 大 学 硕 士 学 位 论 文2.4 就是 Struts 的 MVC 框架图29。
调用 结果响应 视图 JSP 标签库 用户请求 浏览器 控制器 Action 模型 ActionServlet JavaBean Struts- Web容器 config.
xml 图 2.4 Struts 的 MVC 框架图2.3.2 Spring 框架 Spring30是一个解决了许多在 J2EE 开发中常见的
问题的强大框架,是为了解决企业应用程序开发的复杂性而创建的。
Spring 的架构是基于使用 JavaBean 属性的Inversion of Control 容器31。
相对 EJB 来说,Spring 是一个轻量级的 J2EE 应用开发框架(并且应该属于架构级的框架)3235。
Spring 的轻盈体现在其框架本身的基础结构以及对其他应用工具和支持和装配能力,Spring 使用基本的 JavaBeans 来完成以前可能由 EJB 完成的事情变得可能了36。
2.3.3 Hibernate 框架 Hibernate37是一个开源代码的对象关系映射框架,它对 JDBC 进行了非常轻量级的对象封装,使得程序开发人员可以随心所欲的使用面向对象编程思维来操纵数据库。
同时,Hibernate 框架本身提供两种查询方式,一种是与 SQL 语言非常类似的HQL
查询语言38,它允许程序员写数据操纵语句,另一种更对象化的 Criteria 查询方式39。
为了增加对 Hibernate 框架的认识,其体系结构图如图 2.5 所示。
6 华 中 科 技 大 学 硕 士 学 位 论 文 Hibernate 应 持 关 用 久 系 Hibernate 程 化 properties 存取 数 序 对 据 象 库 XML Mapping 图 2.5 Hibernate 框架体系结构图 Hibernate 框架实现了数据库和应用程序的
通信,框架使用持久化对象、映射文件和属性文件来连接数据库4043;对于数据库中数据表而言,都有一个对应类叫做service,类中包含了存取数据库的方法;在每个应用中都有一个非常重要的类就是SessionFactory4445,其主要作用是提供了数据库连接池。
2.4 本章小结 本章主要描述了在下章中进行返利网系统设计与开发中将要所使用的相关技术。
首先介绍 MVC 模式及其在 J2EE 中的应用形式,以及 J2EE 相关技术,包括平台概述、核心技术体系结构和传统架构的弊端,从而提出了开源框架的设计;然后详细的介绍了 Struts、Spring 和 Hibernate 轻量级框架技术,以及给出了它们的整合方案。
7.