韩晓霞,梁晓辉,李彩霞
(1.河北软件职业技术学院,河北 保定 071002;2.河北大学 电子信息工程学院,河北 保定 071002)
随着社会经济和科学技术的快速发展,销售成为企业生产经营活动中最为关键的环节之一。通过销售管理系统可以实现销售业务数据的集中处理,极大地提高销售工作人员的工作效率,大大减少进货管理、销售管理及退货管理中的漏洞,从而节约管理开支,增加企业收入,增强企业的市场竞争能力。本销售管理系统基于MVC模式进行设计,并采用B/S(Browser/Server)结构,运用Struts和Hibernate集成框架开发,通过Struts实现MVC架构,用Hibernate实现数据持久层框架,底层数据库采用SQL Server 2005。
MVC(Modle-View-Controller)设计模式的基本原理是使应用程序的输入、处理和输出分开。Struts作为MVC模式的典型实现,可以很好地实现显示逻辑和业务逻辑的分离,所以基于MVC模式的Struts框架已经成为开发Web应用的主流技术之一。
(1)View的实现。View主要由JSP建立。提高开发效率的方法就是灵活运用Struts本身包含的标记库(TagLib),这样可以在很大程度上简化JSP页面的代码。
(2)Modle的实现。在MVC架构中,真正处理商业逻辑功能的对象是Model对象,在用Struts实现MVC架构过程中,Model的具体表现形式就是ActionForm对象和与其对应的Action对象。Modle返回的数据是中立的,无论数据格式如何,一个Modle可以提供数据给多个View。因此,只写一次应用于Modle的代码就可以被多个View使用,减少了重复性的代码。
(3)Controller的实现。Controller定义了应用程序的行为,负责对来自View的用户要求进行解释,并把这些要求映射成相应的行为,这些行为由Modle负责实现。用Struts实现的Controller主要通过预先提供配置文件struts-config.xml来告诉Actionservlet将请求转发给哪个Action处理,Action-Servlet接受请求并根据配置文件中的定义将控制转移到适当的Action类,由Action类负责完成其余的控制逻辑以及对Model的访问。
Struts框架存在很多优势,但在数据库交互方面并不理想。Hibernate是一个面向Java开发平台的对象/关系数据库的映射工具,提供了面向对象的数据查询检索机制,极大地缩短了手动处理SQL和JDBC的开发时间。Struts和Hibernate技术都具备各自的优势,把两个框架结合起来可以提升MVC各层之间的松耦合性,提高业务模型组件的研发效率,增加系统的灵活性和可维护性。Struts-Hiberate集成架构如图1所示。
图1 Struts-Hiberate集成架构
根据对销售企业所做的需求分析,所设计的销售管理平台涉及供货、库存、订货、发货以及用户管理等全部过程,系统逻辑结构如图2所示。
图2 销售管理系统逻辑结构图
基本信息管理模块包括商品、客户以及供应商信息的注册、查询、分析与维护,是企业最基本的信息。商品库存管理模块包括产品入库、出库、盘库以及商品详细信息的录入等日常处理。系统提供订单的生成及查询功能,可以分别按产品、客户或地区统计订单执行情况。价格管理模块提供系统用户录入报价功能,可对不同类型的客户制定不同的价格政策。合同管理模块负责对所签订合同的信息进行输入、查询、审核及统计工作。发货管理模块需要依据订单信息、客户信用信息、付款信息及库存信息进行综合考量,然后再开具提货单。统计查询模块是对销售过程中所产生的数据进行统计分析以及产品进、销、存、退以及产品销售排行的查询。产品售后管理包括发货记录管理、回款记录管理、退换货管理及维修记录管理。在用户及权限管理模块可以对用户进行创建、权限分配、角色分配、锁定、解锁及删除等操作。
本系统通过Struts实现MVC架构模式,采用Hibernate实现数据持久层,所形成的多层次的体系结构如图3所示。
图3 系统的体系结构
图3所示的系统体系结构分为表示层、业务逻辑层、数据持久层和数据库。表示层用于显示数据和接收用户输入的数据,用户交互操作的显示页面采用JSP技术构建,由Action、ActionServlet、Struts-config.xml构成控制逻辑。业务逻辑层处于数据持久层与表示层中间,起到了数据交换中承上启下的作用,它包含具体的业务逻辑,使用JavaBean实现。数据持久层采用Hibernate作为ORM框架,它主要是负责数据库的访问。底层数据库采用SQL Server 2005实现。
本文根据商品销售过程中用户的需求,提出了基于MVC模式的销售管理系统开发方案,通过Struts与Hibernate的集成,实现了业务逻辑和业务数据的分离,降低了模块间的耦合度,提高了代码的重用度。整个系统不但满足现代销售管理的大部分需求,而且具有良好的稳定性、可扩展性和易维护性。
[1]郑杰.基于川集成框架的项目管理系统设计与实现[D].上海:复旦大学,2011.
[2]吕香奋,等.基于MVC模式的化工企业ERP销售管理系统的设计[J].科技信息,2008(15).
[3]陈洁琴.基于Struts+Spring+Hibernate架构的进销存管理系统的设计与实现[J].成都 信息工程学院学报,2008,23(4).
[4]崔跃海.基于Struts与Hibernate框架的网络购物系统设计与实现[J].电脑知识与技术,2010,6(1):98-100.
[5]邱哲,等.StrutsWeb设计与开发大全[M].北京:清华大学出版社,2006.
[6]强锋科技.Hibernate开发及整合应用大全[M].北京:清华大学出版社,2006:205-226.
[7]朱敏,朱晴婷,李媛媛.JSPWeb应用教程[M].北京:清华大学出版社,2004:248.