《基于规则引擎和MVC设计模式的汽车配件进销存系统设计(共6页).doc》由会员分享,可在线阅读,更多相关《基于规则引擎和MVC设计模式的汽车配件进销存系统设计(共6页).doc(6页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选优质文档-倾情为你奉上进销存管理系统设计前言电子商务、互联网业务的迅猛发展,使中国市场跨入了信息化管理的时代,随着Internet/Web日益成为主要的信息管理平台,对高效开发企业级应用系统的要求也越来越强烈。如果公司企业还停留在原始计账管理阶段,随着全球经济信息化的进程的加快,在如此激变的社会形势和激烈的市场竞争下,将必然被市场淘汰。高效开发企业级应用系统可以大大提高日常工作的效率,不仅将原来由手工操作的进货、出货及销售这一整套流程用计算机进行全程管理,而且消除了手工操作中可能存在的不确定因素,达到进销存管理流程清晰,从而能够比较彻底地贯彻经营者的管理模式。为企业的发展添砖加瓦。因此,一
2、套好的进销存管理系统对于企业的现代化进程来说,是必不可少的。一、 技术与理论1.1 MVC模式MVC是一个设计模式,它主要由三大核心部件组成:模型、视图、控制器。这三大部件强制性地使应用程序的输入、处理和输出分开。其大致的工作原理如下:首先控制器接收用户的请求,并决定应该调用哪个模型来进行处理,然后模型用业务逻辑来处理用户的请求并返回数据,最后控制器用相应的视图格式化模型返回的数据,并通过表示层呈现给用户。MVC有很多的优势,在MVC中视图层和业务层分离,这样就允许更改视图层代码而不用重新编译模型和控制器代码,还允许你使用各种不同样式的视图来访问同一个服务器端的代码,降低开发和维护用户接口的技
3、术含量,同时开发时间也得到相当大的缩减,有利于软件工程化管理,有利于通过工程化、工具化管理程序代码。1.2 Struts+Spring+Hibernate框架架构软件规模日益复杂,良好的开发框架对保证系统的成功至关重要。而J2EE轻量级架构Struts+Hibernate+spring目前已经成为开发Web应用的主流,其成熟的框架减少了重复开发工作量、缩短了开发时间、降低了开发成本、增强了程序维护型和可扩展性。1.2.1 Struts框架Struts是一个基于MVC模型的开放源代码的应用框架,它在 JSP Web应用开发中得到了非常广泛地应用。Struts的工作流程如下:首先,JSP view
4、发起一个以.do表示的请求,ActionForm封装用户请求数据,同时提供验证数据的功能,之后ActionServlet根据Struts-config.xml文件来得到处理这个请求的Action对象,并将请求发送给这个Action对象,Action对象调用model去处理这个请求,将结果返回给ActionServlet;ActionServlet决定将结果返回给对应的view,view得到结果,并将它显示给用户。1.2.2 Spring框架Spring框架和Struts框架一样都是开放源代码的项目,都是一种轻量级的J2EE应用程序框架。Spring是为解决企业应用程序开发复杂性而创建的。Spr
5、ing主要是对业务层的层次细化,也就是更深层次地降低了偶合程度。它是一个从实际项目开发经验中抽取的,可高度重用的应用框架。Spring Framework中目前最引人注目的,也就是名为控制反转(IoC=Inverse of Contro1)或者依赖注入(DI=Dependence Injection)的设计思想,而且它并非一个强制性框架,它提供了很多独立的组件可供选择。Spring的核心要点是支持不绑定到特定J2EE服务的可重用业务和数据访问对象。Spring的IoC控件主要服务于利用classes、对象和服务去组成一个企业级应用,通过规范的方式,将各种不同的控件整合成一个完整的应用。框架的主
6、要优势之一就是其分层架构,分层架构允许您选择使用不同的组件,同时为J2EE应用程序开发提供集成的框架。Spring强大的事务管理功能一直是被人们所称赞的,Spring是构建轻量级的、强壮的J2EE应用程序的最佳选择。Spring框架处于应用服务器和服务库的上方,服务整合的代码属于框架,并暴露于应用开发者。它是一个分层架构,由七个定义好的模块组成。Spring模块构建在核心容器之上。核心容器定义了创建、配置和管理bean的方式。1.2.3 Hibernate框架Hibernate是一个开源的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲地使用面向对象编程
7、思维来操纵数据库。持久层框架Hibernate提供了“对象关系持久化”(object-to-relational pemistence)机制和查询服务。Hibernate可以把数据库信息读进领域对象(domain objects)的一个对象图,这样就可以在连接断开的情况下把这些数据显示到UI层。那些对象也能被更新和送回到持久层,并在数据库里更新。而且不必把对象转化成DTOs,因为DTOs在不同的应用层间移动,可能在转换中丢失。这个模型使Java开发者自然地以一种面向对象的风格和对象打交道,没有附加的编码。Hibernate现在已经成为对象关系映射事实上的标准。Hibernate3自2005年发
8、表后取得了极大的成功,其产品线愈加成熟,相继出现了Hibernate注释、Hibernate实体管理器、Hibernate插件工具等一系列产品套件。Hibernate3.0在应用性上有了很大的提升,对很多方面进行了改进,需要更少的配置能完成更多的功能。Hibernate可以应用在任何使用JDBC的场合, 如此,Java程序员可以随心所欲地使用对象编程思维来操纵数据库。Struts和Spring都是J2EE框架,在一定程度上讲是互补的,两者可以完美的结合,发挥出最大的效果。它们和hibernate结合,实现了从业务到数据封装到显示的一整套解决方案,是开发轻量级应用的最佳选择,也就是我们要使用的S
9、SH框架。1.3 SQL server数据库SQL,即结构化查询语言,是关系数据库的标准语言,是一种介于关系代数和关系演算之间的结构化查询语言。SQL集数据查询、数据操控、数据定义和数据控制功能于一体,具有综合统一、高度非过程化、面向集合的操作方式、以一种语法结构提供多种使用方式以及简洁易学易用的特点。现在常见的关系数据库系统有很多:Oracle、Microsoft SQL Server。Access等,这里选用Microsoft SQL Server 2005。SQL Server 2005基于SQL Server 2000的强大功能之上,提供了一个完整的数据管理和分析解决方案,它将会给不同
10、规模的组织带来不同的帮助。SQL Server 2005可以构建、部署和管理企业应用程序,使其更加安全、伸缩性更强和更可靠;降低开发和支持数据库应用程序的复杂性,实现IT生产力的最大化;在多个平台、应用程序和设备之间共享数据,更易于连接内部和外部系统;同时,在不牺牲性能、可用性、可伸缩性或安全性的前提下有效控制成本。二、 进销存管理系统设计该系统采用面向对象的结构化设计方法,将系统划分出不同的功能模块,并详细描述模块间的内部逻辑,建立完整的数据流及其映射程序结构,采用对象模型化技术建立对象模型、功能模型和动态模型,结合软件复用技术进行类及其对象的定义及实现。具体采用Struts+Spring+
11、Hibernate架构,以及SQL Server 2005作为数据库支持系统。系统采用成熟的主流开发技术,从技术上有稳定的、可靠的保障,且具有一定的实用价值。2.1 企业需求分析概述一般企业进销存管理系统应满足以下功能:首先一个可视化的操作简便的人机界面是必不可少的,其次要有层次清晰的权限管理,对数据库的访问查询权限要有明确的设置,对于企业不同级别的管理层、客户,提供不同的访问权限,对数据安全要有保障性。同时要有较强的数据查询功能,并能够支持多条件查询,对货品、人员、订单等诸多信息都能多角度全方位的实时查询,对财务报表进行有效的管理,预防假账、漏账、差账等情况出现,能够对企业各个库存货品情况实
12、时掌握,并且能提供有效的计算功能,具有对账目报表、货品库存等数据进行图表绘制分析的能力,减少人为干预,为企业提供一个直观的数据分析,使企业更为客观正确的前进。2.2 企业业务流程分析对汽配企业进销存的业务流程要有一个全面的了解分析,才能对整个管理系统的模块设计与实现有好的规划,才能满足之前的客户需求分析。一般汽配企业进销存的流程为:客户向公司下订单,公司根据自己库存情况对订单进行审批,经确认后,反馈给客户,客户订单资金到帐后,仓库进行发货,公司财务进行记载发出发票。同时,公司依据自身的库存情况,对进货商发出订单,公司财务依据要求支付资金,当货品到后,仓库要及时入库登记,对每一货品都要有相关信息
13、登记。公司的财务部门还要定期提交财务报表,仓库也要定期对库存情况进行汇报,并对缺货及时上报。以下为汽车配件进销存的简略业务流程图:2.3 系统主要模块设计根据对对汽配企业业务流程相对了解,总结制定出以下几个主要的模块:1 用户管理模块:用户注册、修改密码、用户切换、公司人员管理、进货商管理、客户管理2 进货管理模块:进货订单、货品信息、退货处理3 销售管理模块:销售订单、折扣处理、废单处理4 库存管理模块:货品出库、货品入库、货品查询、库存盘点、缺货提醒5 财务管理模块:货品定价、销售订单统计、进货订单统计、账单统计、坏账处理、报表处理6 系统管理模块:管理员设置、权限设置、系统维护、数据库备
14、份整理、帮助。以下为系统功能模块结构图:2.4 主要数据结构表单公司人员信息表:用户名、用户密码、编号、性别、职务、联系电话、备注;供应商信息表:厂商名称、厂商编号、联系人、电话、地址、邮编、网址、电子邮箱、进货数量、进货金额、备注;客户信息表:客户名称、客户编号、联系电话、客户级别、联系电话、地址、购货数量,购货金额,备注;货品信息表:货品名称、条形码、货品编号、进货单价、出货单价、折扣、存放位置、数量、备注;进货信息表:进货订单号、货品名称、进货单价、进货数量、进货日期、进货信息、进货人、备注;销售信息表:销售订单号、货品名称、出货单价、折扣、出货数量、出货日期、进货金额、销售日期、客户信
15、息、出货人、销售人、备注;库存信息表:仓库编号、货存类型、货存数量、出货记录、入货记录、备注;退货表:退货名称、退货编号、退货数量、邮编、退货日期、退货人、备注;2.5系统实现本系统采用主流的管理系统开发技术,基于规则引擎、MVC设计模式和Struts+Spring+Hibernate架构以及安全的数据库支持系统,设计并实现面向企业进销存管理需求的系统设计。将在Web架构设计的基础上,对Web层、业务逻辑层、数据持久层等进行总体设计,同时进行数据库设计,结合JAVA平台开发面向企业的进销存管理系统,最终在Internet下能够稳定运行,可以实现:用户基础资料管理、库存管理、销售管理、采购订货、
16、结算管理、经营分析、盘点管理、系统维护等功能。该平台将企业现有资源和需求进行综合分析,并进行有效的集成化管理。本系统实现了快速搭建企业信息系统的开发框架,提高系统的可维护性、可复用性、可扩展性以及安全性,解决企业内部系统异构性所带来的数据交换、共享困难,数据冗余度大等问题,将与业务逻辑无关的操作尽可能地封装,提供封装子类公共行为的抽象父类以及合理、规范的编程接口,并基于MVC模式设计企业信息系统框架。 企业信息系统框架提供了一系列可复用组件,例如采用动态VO、值列表处理器以及命令模式的持久层组件,封装了数据库访问细节,并为不同的持久层框架提供调用接口;基于Ajax技术的客户端校验引擎、动态级联
17、菜单以及通用动态树型结构组件,一系列查询、分页、缓存等标签库则减少了表示层的代码冗余,简化了表示层开发;基于 L登录以及基于角色的访问控制的安全子系统则初步实现了数据安全传输和权限控制;此外基于Web服务的企业应用集成模型为今后系统集成、数据共享提供了有益探索。三、总结现在越来越多的企业系统都采用Web而构建,Web应用将浏览器作为用户和系统的接口,具有消除了图形用户界面的开发、安装和维护的优势,但同时Web应用的表示逻辑和业务逻辑都必须在服务器端实现,使得Web应用的开发较为困难。而struts应用框架,基于MVC Model 2的设计思想,提供了良好的层次分隔能力,JSP的设计综合利用了J
18、avaBean和标准库机制,使得系统的Web页面几乎不含任何的Java代码片断,很好地实现了业务逻辑与用户界面的分离,Web层中Action组件的设计充分利用了接口技术,通过将ActionForm和JavaBean的通用功能抽象到接口中,使得Action组件能构以一致的方式来和它们进行统一的交互。本系统应用Struts框架、规则引擎和Velocity模版工具,以企业进销存为研究对象,根据企业现状和经营特点,提出企业现存的问题,并进行全面而科学的分析,使得企业生产、库存和销售能够有机结合起来,杜绝人为因素给企业带来的损失,使管理者实时了解商品的销售情况,及早调整销售策略,以保证企业能够长期稳定发展并在市场上取得自己的竞争优势。这对于进销存管理系统的分析与设计是非常具有理论性和实践性意义的。专心-专注-专业