ImageVerifierCode 换一换
格式:DOCX , 页数:50 ,大小:953.72KB ,
资源ID:27580601      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/27580601.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于WEB的智能仓库管理系统.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

基于WEB的智能仓库管理系统.docx

1、基于WEB的智能仓库管理系统基于WEB的智能仓库管理系统 作者: 日期: 毕业设计报告(论文)题目: 基于web的智能仓库管理系统基于web的智能仓库管理系统摘 要本系统主要完成对仓库的库存管理,包括入库、出库、库存,员工信息,供应商信息以及密码管理等六个方面。系统可以完成对各类信息的浏览、查询、添加、删除、修改、报表等功能。 本系统由四大模块构成,分别是:系统设置,单据填开,库存查询,报表导出.其中系统设置包括:管理员的增加,修改,删除,以及权限管理;仓库内货物的基本资料的增加,修改,删除;工人,客户等的基本资料的增加,修改,删除.单据填开模块包括:出库单,入库单,派工单,等单据的填开及作废

2、操作。库存查询系统包括:库存情况的查询,各项明细的查询,工人工资的查询,以及按月,按季度,按年的报表导出功能。 该系统是对仓库的智能管理,并进行相应的采购管理、入库管理、出库管理、报表管理等一些仓库方面的管理.关键字:数据库 SQL语言 MyEclipse 数据库组件 仓库管理Intelligent Database SystemAbstractThesystemmainlyreferstowarehousingmanagement,whichincludesthefollowingfields:stockinandout,inventory,staffdata,suppliersdataan

3、dpasswordmanagement。Italsooffersthefunctionsasdatabrowse,adding,deleting,modificationandreport,etc.Itcontains3modules,systemmanagement,receiptsmanagementandinventoryquery.Systemmanagementmoduleisusedtoconductoperateradding,modification,deletingandauthoirtiesassignment,inaddition,inventory,staffandcu

4、stomerdataadding,modificationanddeleting;thesecondpartreferstostockinandout,receiptsfillinandcancellation;thelastmodulecontendstowarehousingquery,staffsalaryquery,monthly,quarterly,yearlyreportqueryandexport.Asstatedpreviously,thesystemisanintelligentwarehousingmanagementsolution,whichincludes:purch

5、asingmanagement,stockinandoutmanagement,reportmanagement,etc.Key words: database; SQL; Eclipse;Database module; Database management第一章前 言1.1背景情况介绍这是一个互联网的时代,所有企业都面临着互联网浪潮的强力冲击,电子商务无论从技术实现还是社会大背景都日益成熟。企业对企业之间的信息化如何解决?企业电子商务如何实现?这些都是摆在企业企业管理者和信息部门负责人面前实实在在的问题。借助于信息技术手段的创新,规范业务流程,强化仓库管理,对于企业信息化来说是一次良好契

6、机.在计算机的应用日益普及的今天,在计算机软件渐渐成为生活一部分的时代,在现代企业仓库物流需要电子化管理的现在,一个基于web的智能仓库管理系统呼之欲出.这个系统,既可以减轻仓库管理员的工作负担,又能企业更好的掌握库存情况,及时调整营销战略,取得更大利益。智能仓库管理系统,是当代企业运作体系中,不可或缺的一部分,也是整个企业管理软件家族中,举足轻重的一员。从70年代开始,计算机技术开始应用到物流领域。 随着物流市场和物流信息化的发展,物流软件市场也应运而生并迅速发展起来,国内外出现了一大批物流软件供应商和物流软件.“物流软件作为管理软件,较其它应用软件呈现先进性、高效性、可靠性和安全性等特点;

7、较其它管理软件,如ERP(Enterprise Resource Planning),具有以下特点:实施风险小,实施迅速;效益显著、见效快。根据仓库管理软件结构分类,就目前仓库管理软件所使用的应用范围来说,仓库管理包括如下几个子系统:WMS(Warehouse Management System,仓库管理系统)、TMS(Transportation Management System,运输管理系统。OMS(Order Management System,定单管理系统)、SMS(Service Management System,服务管理系统)。其中,WMS主要提供了一整套仓库业务以及作业管理系

8、统。通过仓库管理系统可以实现库位分配自动化和智能化;提高仓库作业效率和速度,提供准确的库存信息,并使之与实际库存变化同步.在研究过程中,我发现,国内及国外对于仓库的管理系统软件不在少数,但是具备智能化的就寥寥无几,有些仓库管理软件功能强大,但不实用;有些实用,但是软件界面不够友好;有些界面华丽,但是性能不够稳定。所以,现实应用需要编写一套,实用,界面友好,性能稳定的智能仓库管理系统。操作本系统的客户并不是专业的计算机从业人员,他们对于软件的初步认识就是,外观,所以,我在jsp技术上选择了比较动态,美观大方的extjs系统架构,该架构对于用户的提示友好,性能强大,动态性好,充分满足前台页面的实际

9、需求。而一款软件有一件漂亮的外衣还是不够的,他还需要强大的内心,这个内心就是Spring,他的骨架就是Struts2,他的血液就是Hibernate.这样组成的软件才能成为一款优秀的智能仓库管理系统。1.2 系统整体设计本文主要对智能仓库管理系统-整个开发过程和开发方式做大体的介绍。该系统主要采用MVC 模式把系统分成view层,model层,control层,视图层采用AJAX的EXTJS框架,模型层使用了JAVABEAN,控制层采用了Spring+Struts2。本系统是基于WEB的B/S架构,动态性能比较高,而且采用了AJAXEXTJS+JSP+JAVABEAN+Spring+Strut

10、s2+Hibernate技术,数据库采用MySql5。5进行开发的.智能仓库管理系统的核心是入库、库存和出库三者之间的联系,每一个表的修改都将联动的影响其它的表,当完成入库或出库操作时系统会自动地完成库存的修改。查询功能也是系统的核心之一,在系统中即有单条件查询和多条件查询,也有精确查询和模糊查询,系统不仅有静态的条件查询,也有动态生成的条件查询,其目的都是为了方便用户使用。系统有完整的用户添加、删除和密码修改功能,并具备报表打印功能。主要介绍了本课题的开发背景,所要完成的功能和开发的过程。重点的说明了系统设计的重点、设计思想、难点技术和解决方案.第二章 系统的总体设计2.1 模块2。1.1

11、模块划分本系统由四大模块构成,分别是:系统设置,单据填开,库存查询,报表导出。其中:系统设置包括:管理员的增加,修改,删除,以及权限管理;仓库内货物的基本资料的增加,修改,删除;工人,客户等的基本资料的增加,修改,删除。单据填开模块包括:出库单,入库单,派工单,等单据的填开及作废操作。库存查询系统包括:库存情况的查询,各项明细的查询,工人工资的查询,正在加工产品查询等.报表导出模块包括:按月,按季度,按年的报表导出功能。2.1.2 功能概述系统功能划分和描述如下(如图2-1所示):A.系统设置A。1操作员管理 A.2工资标准管理A。3原料类型管理 A。4成品类型管理A.5工人资料设置 A.6客

12、户资料管理B单据填开B.1原料入库单 B.2原料出库单B.3成品入库单 B.4成品出库单(送货单)B。5派工单 B。6单据作废C明细查询C.1原料库存查询 C。2成品库存查询C。3原料出入明细查询 C。4成品出入明细查询C.5工人工资查询 C。6正在加工产品查询D报表导出D。1原料库存月报表 D。2原料库存季报表D。3原料库存年报表 D。4成品库存月报表D.5成品库存季报表 D.6成品库存年报表D.7工人工资月报表统首先进入登录界面,登录时系统会根据登陆的账号自动确认用户所拥有的权限.登录成功后,根据不同的目的进行不同的操作,超级管理员能操作所有的功能,一般管理员能操作除权限管理外的功能,采购

13、员能操作查看和入库功能,出库员能操作查看和出库的功能,一般观察者只能操作查看功能。图21系统结构连接图2。2 实现技术2。2。1 jspextjsJSP(Java Server Pages)是由Sun Microsystems 公司倡导、多家公司参与一起建立的一种动态网页技术标准,JSP技术在Servlet技术基础上发展起来的,它正在飞速发展中,现已成为Java服务器编程的重要组成部分.虽然还未成型,但是它必将和J2EE(Java 2 Enterprise Edition)一起发展。3JSP是结合markup(HTML和XML)和Java代码来处理一种动态页面。每一页第一次被调用时,通过JSP

14、引擎自动被编译成Servlet,然后被执行,以后每次调用时,执行编译过的Servlet.JSP提供了多种方式访问Java class、Servlet、Applets和Web Server,因此,Web应用的功能可以分成多个明确定义公用接口的组件,通过JSP将它们结合在一起。 ext是一个强大的js类库,以前是基于YAHOOUI,现在已经完全独立了,主要包括data,widget,form,grid,dd,menu,其中最强大的是grid了,编程思想是基于面向对象编程(oop),扩展性相当的好。可以自己写扩展。自己定义命名空间.web应用可能类库太大。不过您可以根据需要按需加载您想要的类库就可以

15、了。主要包括三个大的文件extall.css,extbase。js,extall.js(包括所有的类库,您可以根据需要进行删减。官方网站提供这一接口),在引用ext类库的时候。这三个文件必不可少.它提供了丰富的,非常漂亮的外观体验,成为众多界面层开发人员的追捧!其核心的组件基本覆盖了我们构建富客户端的常用的组件。2。2。2 javabean及HibernateHibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序

16、使用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。Hibernate的核心接口一共有5个,分别为:Session、SessionFactory、Transaction、Query和Configuration.这5个核心接口在任何开发中都会用到.通过这些接口,不仅可以对持久化对象进行存取,还能够进行事务控制.Hibernate 中提供了两级Cache,第一级别的缓存是Session级别的缓存,它是属于事务范围的缓存。这一级别的缓存由hibernate管理的,一般情况下无需进行干预;第二级别

17、的缓存是SessionFactory级别的缓存,它是属于进程范围或群集范围的缓存。这一级别的缓存可以进行配置和更改,并且可以动态加载和卸载. Hibernate还为查询结果提供了一个查询缓存,它依赖于第二级缓存。4Hibernate对象关系映射提供延迟的与非延迟的对象初始化。非延迟加载在读取一个对象的时候会将与这个对象所有相关的其他对象一起读取出来。这有时会导致成百的(如果不是成千的话)select语句在读取对象的时候执行.这个问题有时出现在使用双向关系的时候,经常会导致整个数据库都在初始化的阶段被读出来了。当然,你可以不厌其烦地检查每一个对象与其他对象的关系,并把那些最昂贵的删除,但是到最后

18、,我们可能会因此失去了本想在ORM工具中获得的便利。2。2.3 Struts2、MVC和Spring模型-视图-控制器(MVC)是80年代Smalltalk80出现的一种软件设计模式,现在已经被广泛的使用。 1、模型(Model) 模型是应用程序的主体部分。模型表示业务数据,或者业务逻辑.2、视图(View) 视图是应用程序中用户界面相关的部分,是用户看到并与之交互的界面。 3、控制器(controller) 控制器工作就是根据用户的输入,控制用户界面数据显示和更新model对象状态。5MVC 式的出现不仅实现了功能模块和显示模块的分离,同时它还提高了应用系统的可维护性、可扩展性、可移植性和组

19、件的可复用性。很多VB,Delphi等RAD程序都有这种问题。甚至现在的C,Java有时候也会出现把业务逻辑写在显示模块中的现象管MVC设计模式很早就提出,但在Web项目的开发中引入MVC却是步履维艰。主要原因:一是在早期的Web项目的开发中,程序语言和HTML的分离一直难以实现.6 CGI程序以字符串输出的形式动态地生成HTML内容.后来随着脚本语言的出现,前面的方式又被倒了过来,改成将脚本语言书写的程序嵌入在HTML内容中.这两种方式有一个相同的不足之处即它们总是无法将程序语言和HTML分离。二是脚本语言的功能相对较弱,缺乏支持MVC设计模式的一些必要的技术基础。直到基于J2EE的JSP

20、Model 2问世时才得以改观。7 它用JSP技术实现视图的功能,用Servlet技术实现控制器的功能,用JavaBean技术实现模型的功能JSP Model 1 与 JSP Model 2。如图22所示:图2-2 MVC组件模型的关系和功能图图23 Struts2流程示意图当接收到一个httprequest请求时, Interceptor会做一些拦截或者初始化的工作.当外部的httpservletrequest请求到来时,它会被初始到servlet容器中, 并传递给一个标准的过滤器链,而ActionContextCleanUp在集成插件方面非常有用。Other filters(SitMesh

21、,etc)调用FilterDispatecher会去查找相应的ActionMapper,如果找到了相应的ActionMapper,它将会将控制权限交给ActionProxy。ActionProxy将会通过ConfigurationManager来查找配置struts.xml。下一步将会 通过ActionInvocation来负责命令模式的实现(包括调用一些拦截Interceptor框架在调用action之前),一旦action返回,会查找相应的Result.Result类型可以是 jsp或者freeMark 等.这些组件和ActionMapper一起返回给请求的url(注意拦截器的执行顺序)响

22、应的返回是通过我们在web.xml中配置的过滤器,如果ActionContextCleanUp是当前使用的,则FilterDispatecher将不会清理sreadlocalActionContext,如果ActionContextCleanUp不使用,则将会去清理sreadlocals。如图59所示。8Spring是一个开源框架,它由Rod Johnson创建.它是为了解决企业应用开发的复杂性而创建的。Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情。然而,Spring的用途不仅限于服务器端的开发。从简单性、可测试性和松耦合的角度而言,任何Java应用都可以从Spri

23、ng中受益. 目的:解决企业应用开发的复杂性 功能:使用基本的JavaBean代替EJB,并提供了更多的企业应用功能 范围:任何Java应用 简单来说,Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架。 2轻量从大小与开销两方面而言Spring都是轻量的.完整的Spring框架可以在一个大小只有1MB多的JAR文件里发布。并且Spring所需的处理开销也是微不足道的.此外,Spring是非侵入式的:典型地,Spring应用中的对象不依赖于Spring的特定类。 控制反转Spring通过一种称作控制反转(IoC)的技术促进了松耦合。当应用了IoC,一个对象依赖的其它对象

24、会通过被动的方式传递进来,而不是这个对象自己创建或者查找依赖对象。你可以认为IoC与JNDI相反不是对象从容器中查找依赖,而是容器在对象初始化时不等对象请求就主动将依赖传递给它。 面向切面Spring提供了面向切面编程的丰富支持,允许通过分离应用的业务逻辑与系统级服务(例如审计(auditing)和事务(transaction)管理)进行内聚性的开发。应用对象只实现它们应该做的完成业务逻辑仅此而已.它们并不负责(甚至是意识)其它的系统级关注点,例如日志或事务支持。 容器Spring包含并管理应用对象的配置和生命周期,在这个意义上它是一种容器,你可以配置你的每个bean如何被创建-基于一个可配置

25、原型(prototype),你的bean可以创建一个单独的实例或者每次需要时都生成一个新的实例以及它们是如何相互关联的。然而,Spring不应该被混同于传统的重量级的EJB容器,它们经常是庞大与笨重的,难以使用。 框架-Spring可以将简单的组件配置、组合成为复杂的应用.在Spring中,应用对象被声明式地组合,典型地是在一个XML文件里。Spring也提供了很多基础功能(事务管理、持久化框架集成等等),将应用逻辑的开发留给了你。 所有Spring的这些特征使你能够编写更干净、更可管理、并且更易于测试的代码。它们也为Spring中的各种模块提供了基础支持。2。2。4数据库MySQL1。使用C

26、和C+编写,并使用了多种编译器进行测试,保证源代码的可移植性 2.支持AIX、FreeBSD、HP-UX、Linux、Mac OS、Novell Netware、OpenBSD、OS/2 Wrap、Solaris、Windows等多种操作系统 3.为多种编程语言提供了API.这些编程语言包括C、C+、Python、Java、Perl、PHP、Eiffel、Ruby和Tcl等。 4.支持多线程,充分利用CPU资源 5.优化的SQL查询算法,有效地提高查询速度 6。既能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够作为一个库而嵌入到其他的软件中提供多语言支持,常见的编码如中文的GB

27、2312、BIG5,日文的Shift_JIS等都可以用作数据表名和数据列名 7。提供TCP/IP、ODBC和JDBC等多种数据库连接途径 8。提供用于管理、检查、优化数据库操作的管理工具 9.可以处理拥有上千万条记录的大型数据库(1)减少数据的重复(Redundancy can be reduced)当在一个非数据库系统当中,每一个应用程序都有属于他们自己的文件,由于无法有系统建立的数据,因此常常会造成存储数据的重复与浪费。例如:在一家公司当中,人事管理程序与工资管理程序或许都会使用到职员与部门的信息或文件,而我们可以运用数据库的方法,把这两个文件整理起来,以减少多余的数据,过度地占用存储空间

28、。(2)避免数据的不一致(Inconsistency can avoid)本项的特色,可以说是延伸前项的一个特点,要说明这样的一个现象,我们可以从下面这个实例来看:若是在同一家公司当中,职员甲在策划部门工作,且职员甲的记录同时被存放在数据库的两个地方,而数据库管理系统却没有对这样重要的情况加以控制,当其中一条数据库被修改时,便会造成数据的不一致,但是,对于一个健全的数据库管理系统而言,将会对这样的情况加以控制,但有时并不需要刻意消除这种情形,应当视该数据库的需求与效率来决定。 (3)数据共享(Data shared)对于数据共享的意义,并不是只有针对数据库设计的应用程序,可以使用数据库中的数据

29、,对于其他撰写好的应用程序,同样可以对相同数据库当中的数据进行处理,进而达到数据共享的目的.(4)强化数据的标准化(Standard can be enforced)由数据库管理系统,对数据做出统筹性的管理,对于数据的格式与一些存储上的标准进行控制,如此一来,对于不同的环境的数据交换(Data Interchange)上将有很大的帮助,也能提高数据处理的效率。(5)实践安全性的管理(Security restriction can be applied)通过对数据库完整的权限控制,数据库管理者可以确认所有可供用户存取数据的合法途径渠道,并且可以事先对一些较重要或关键性的数据进行安全检查,以确保

30、数据存取时,能够将任何不当损毁的情形降至最低。(6)完整性的维护(Integrity can be maintained)所谓完整性的问题,就是要确认某条数据在数据库当中,是正确无误的。正如(2)所述,若是无法控制数据的不一致性,便会产生完整性不足的问题,所以,我们会发现,当数据重复性高的时候,数据不完整的情形也会增加,当然,若是数据库的功能完整,将会大大地提高数据完整性,也会增加数据库的维护能力与维护简便性。(7)需求冲突会获得平衡(Conflicting requirements can be balance)在一个较大型的企业当中,用户不同的需求,往往会造成系统或数据库在设计上的困扰,但

31、是一个合适的数据库系统,可以通过数据库管理员的管理,将会有效地整理各方面的信息,对于一些较重要的应用程序,可以适时地提供较快速的数据存取方法与格式,以平衡多个用户在需求上的冲突。92.2。5开发工具MyEclipse7。1MyEclipse企业级工作平台(MyEclipse Enterprise Workbench ,简称MyEclipse)是对Eclipse IDE的扩展,利用它我们可以在数据库和JavaEE的开发、发布,以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML, Struts, JSF, CSS, Javascript, SQL, Hibernate。 在结构上,MyEclipse的特征可以被分为7类: 1. JavaEE模型 2。 WEB开发工具 3. EJB开发工具 4. 应用程序服务器的连接器 5。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1