APP下载

基于JavaEE多层框架的在线手机销售管理系统设计

2012-04-29郑文生

中国管理信息化 2012年23期

郑文生

[摘要] 根据手机销售的特点和需求,设计基于JavaEE多层框架的在线手机销售管理系统。由开源框架Struts做表示层,Spring做业务层,Hibernate做持久层。整合集成后的系统层次清晰,代码耦合度降低,有利于系统的维护和扩展。

[关键词] Struts; Spring; Hibernate; 在线销售系统

doi : 10 . 3969 / j . issn . 1673 - 0194 . 2012 . 23. 048

[中图分类号]F713.36; TP311[文献标识码]A[文章编号]1673 - 0194(2012)23- 0079- 03\

0引言

互联网的流行为电子商务的发展提供了广阔的空间。商家把互联网作为一种销售渠道,人们可以方便地在网上进行商品浏览、购物等。在线手机销售系统的出现使得销售手机更加简便,减少了商家的投资成本,也使得顾客能够享受更为轻松与便捷的购买过程。并且,在线手机销售也迎合了当今最流行的网上购物的热潮。

针对手机销售的发展现状,本文设计了基于JavaEE的在线手机销售管理系统。在本系统中,使用多层架构,将Struts 、Spring和Hibernate三个开源框架整合后进行开发,简化了系统的开发过程,提高了系统的可扩展性和可维护性。

1主要技术分析

1.1Java EE框架

Java EE是一个得到广泛认可的工业标准,是为企业提供系统整体解决方案,解决开发、部署和管理等相关问题的一套完整的体系结构。其核心是一套技术规范与指南,有共同的标准及规格,让遵循Java 2架构的不同平台之间具有良好的兼容性,为搭建具有可伸缩性、灵活性、易维护性的系统提供了良好的机制。

1.2Struts、Spring、Hibernate开源框架

Struts 是一个基于Java EE平台的 MVC框架,在该框架中,模型由实现业务逻辑的 JavaBean组件构成,完成业务逻辑和数据处理等方面功能;控制器由 Action 和ActionServlet 来实现,完成视图组件与模型组件的交互功能;视图由JSP 文件构成,完成展现前台界面数据的功能。

Spring是一个以IoC(依赖注入)原则和AOP(面向方面编程)思想为基础的轻量级框架。相对于 Java EE,具有维护容易、分层清楚、速度快、代码少等优点。IoC将判断依赖关系的职责移交给容器,而不是由组件本身来判断彼此之间的依赖关系。AOP让开发人员可以创建非行为性的横切关注点,并将它们插入到应用程序代码中。Spring有效地组织了系统的中间层对象,消除了中间层对象创建与使用耦合紧密的问题,同时消除了使用各种各样格式的属性定制文件的需要,在整个应用和工程中,可以通过一种一致的方法进行配置。

Hibernate作为目前流行的面向Java环境的对象/关系数据库映射工具,对 JDBC 进行轻量级的对象封装,不仅管理Java类到数据库表的映射,还提供数据查询和获取数据的方法,可以大幅度减少开发时人工使用SQL和JDBC处理数据的时间。Hibernate 可 以 应 用 在 任 何 使 用 JDBC 的场合,进一步完善和扩展了 JDBC 的功能。Hibernate本质上是一个提供数据库服务的中间件,它利用数据库和其他一些配置文件来为应用程序提供数据持久服务。

2系统设计

在线手机销售系统功能主要包括注册、账户管理、购物车、搜索、结账等基本功能。此外,系统也将实现在线手机销售系统的后端管理,包括手机的添加、账单的处理等功能,减轻了维护人员的工作强度,提高了工作效率与管理水平。系统功能模块较多,业务流程比较复杂,应采用能够快速开发,后期易于维护和扩展的框架技术。根据这些特点,系统采用了Java EE多层架构,使用了Struts、 Spring 和Hibernate 开源框架。将3种框架集成,划分了架构的层次结构,将系统分为 3 层:表示层、业务层、数据持久层,明确了各层次的职责,允许各层之间使用接口进行通信。

2.1持久层设计

使用Hibernate 框架构建的数据持久层需要创建数据访问对象DAO、值对象和 Hibernate Mappings 映射文件。其中每个值对象封装了持久层对象的数据,对应于数据库中的一张表,由一些属性及对应的 get/set 方法组成;每个 DAO 类定义了select、insert、update、delete等数据库操作的基本方法。持久层中各个模块的业务入口是DAO接口,DAOImpl类是DAO接口的实现类,是具体业务的实现,为业务层提供数据来源。所有DAOImpl都继承于HibernateDAOSupport类。

2.2业务层设计

使用Spring作为业务层框架,提供的职责有:管理事务;处理应用的业务逻辑;管理业务对象之间的依赖性;管理业务层与其他层进行交互的接口;实现表示层的请求。业务层的接口为Service。与其他层的交互通过Spring IoC控制。当表示层Action的请求到达后,根据配置文件ApplicationContext.xml中的配置,查找相对应的Service接口(Bean类)。在接口的实现类ServiceImpl中实现具体的业务方法。由于Spring采用注入方式Setter对Bean类进行管理,因此Bean类不再自己查找自己所依赖的类而是由容器提供。

2.3表示层设计

使用Struts 框架实现, 通过配置文件 ActionMapping.properties将模型、视图、控制器各组件联系起来。 控制器Controller负责应用程序的调度,拦截过滤请求从视图层传来的客户请求,然后通过配置文件将不同的请求交给不同的模型去处理,同时将相关数据传递到模型层,模型组件Action处理请求并返回响应数据;视图JSP负责格式化数据并呈现给用户。同一个模型可以被不同的视图重用,并且模型与控制器和视图保持相对独立,可以方便地改变应用程序的业务规则。

2.4系统总体类设计

系统总体的类处理流程如图1所示。

可以看出,表示层Action通过配置文件调用Service接口,业务逻辑调用了业务对象,业务操作完成,表示层和业务层就联系起来了。业务层实现类ServiceImpl使用配置文件调用DAO接口完成具体业务对象的操作,业务层和持久层的数据操作联系了起来。

综上,通过系统总体的类处理流程图,可以了解到,配置文件的作用,以及各层接口和接口实现类的关系,系统的三层框架是如何低耦合联系在一起的。

3结束语

本文将3个开源框架Struts、Spring和Hibernate集成,按照实际项目的要求设计了基于Java EE多层框架的在线手机销售管理系统。这3个框架可以很好地实现表示层、业务层及持久层的分离,使系统具有很好的可扩展性和可维护性,可在电子商务平台的网上购物实践中推广使用,

主要参考文献

[1] 王可,毛力. 基于J2EE轻量级框架的教研室信息化管理系统设计[J]. 中国管理信息化,2011(19):95-97.

[2] 廖作斌. 基于Java EE多层框架的实时监测系统设计[J]. 计算机与现代化,2011(5).

[3] 崔荔,邵春晖,等. J2EE 基于 Struts 和 Hibernate 框架的新闻发布系统分析与设计[J]. 电子设计工程,2012(15).

[4] 张涛. 使用框架技术构建可重用的J2EE应用[J]. 微计算机信息,2007(35).

[5] 丁宪成. ASP在线手机销售系统[J]. 电子商务,2012(5).

[6] 夏昕,曹晓钢,唐勇. 深入浅出Hibernate[M]. 北京:电子工业出版社, 2005.

[7] [美]Anli Hermrajani.Java敏捷开发——使用 Spring、Hibernate和Eclipse[M]. 韩坤,译. 北京:清华大学出版社,2006.

[8] 李刚. 轻量级Java EE企业应用实战——Struts 2 + Spring 3 + Hibernate整合开发[M]. 第3版. 北京: 电子工业出版社,2011.