基于Java技术的仓储管理系统的设计与实现学位论文(40页).doc
《基于Java技术的仓储管理系统的设计与实现学位论文(40页).doc》由会员分享,可在线阅读,更多相关《基于Java技术的仓储管理系统的设计与实现学位论文(40页).doc(40页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、-基于Java技术的仓储管理系统的设计与实现学位论文-第 40 页摘 要伴随着企业的逐渐发展壮大,其业务的膨胀给后勤的仓储管理系统带来了许多问题,仓储管理软件是目前较为有效的解决方案,仓储管理系统是企业管理系统的一部分,其发挥的作用越来越重要,能给企业带来巨大的效益。本文将根据软件工程的理论,针对企业仓储管理系统面临的实际问题,开发出基于Java技术的仓储管理系统。本文,首先分析仓储系统的具体功能,然后根据实际需要进行需求分析,并将需求分析以电子文档的方式反馈给用户,和用户进行沟通进一步确认需求,而后根据需求分析,使用系统分析和设计的结构化分析方法,以及数据库建模,建立了基于数据库的模型,后台
2、数据使用Mysql完成。基于开放结的开发结构Java.EE,实现了系统登陆模块、供应商信息管理模块、货品信息管理模块、入库存报表生成模块、出库报表生产模块等;最后对系统进行调试并总结,同时对以后的实际工作指明了方向。关键词: Java技术 软件工程理论 需求分析 数据库建模目 录摘 要1目 录21 引 言31.1选题背景及意义31.2课题任务42 相关技术综述52.1Java技术简介及相关原理52.2 Struts63 系统分析与设计103.1 系统分析103.2 系统环境113.3 需求分析113.4 系统功能设计144 数据库设计204.1 概述204.2 E-R图204.3 数据表215
3、 系统功能的实现265.1 系统功能简述265.2 模块化功能实现266 调 试407 总 结43参考文献44致 谢451 引 言1.1选题背景及意义在企业的发展过程中,伴随着业务的激增给企业的管理带来了许多问题,作为企业的管理信息系统可以有效地解决此类问题。而仓储管理员理系统作为企业管理系统的重要组成部分,它可以给企业带来巨大的经济效益,采用仓储管理员理系统将使企业改变传统的手工记录模式,应用数据库技术使海量数据的存储与处理变得轻而易举,如此大幅度缩短仓储业务流程的处理时间,提高企业仓储管理的水平,适应市场经济的发展形势。早在70年代,计算机技术就最先被引用到了仓储和物流配送领域当中,伴随着
4、物流市场和产品讯息的疾速发展,物流软件市场也应运而生,并且迅速发展壮大起来,涌现出了一大批仓储物流应用软件;物流软件作为企业管理应用软件,物流软件,相比其他软件提供了先进的,效率高的特点,可靠性和安全性,而且具有较小的实施风险和实施优势,其效益明显,操作快捷等特点,同时还具有实施成本低,效益明显、见效快等优点。根据物流软件结构分类,就当前的物流软件所使用的范围来计,物流软件包含以下几个子系统:仓储管理员理系统(WMS)、运输管理系统(TMS)、定单管理系统(OMS)、服务管理系统(SMS)等,其中仓储管理员理系统是提供一整套仓库业务及作业管理的应用软件,通过仓储管理员理系统可以实现库位分配自动
5、化及智能化操作,提升仓库作业效率,提供准确的库存、库位信息,实现仓储管理员理的动态化管理。我国自从加入WTO后,市场经济环境下的企业竞争越来越激烈,国内许多企业由于信息记录、收集、汇总、处理分析尚处于初级水平阶段,记录不规范,记录信息分散,随机性,单一的应用,信息收集不及时,不全面,不完善,不科学,质量,和主体多元化,不一致的结果,处理手段落后,效率低。仓储管理员理系统是通过存储,出库,库存,库存调整,整合批次管理、物料对应、账物符合、库存清点、质检验收管理、实时库存动态管理等业务功能,对库存业务的成本管理全过程进行有效控制和跟踪,实现完善的企业仓储信息管理。仓储管理员理系统的投入,将使仓库的
6、管理更加正规化,为产品的出入仓储管理员理部门和销售部门提供的便利,降低了仓库的呆滞损耗;企业可以跟踪服务来销售产品,同时消除了销售人员需要根据过去的做法来验证新的自户外用品的麻烦,提高客户服务的效率,同时节省相关费用,避免不必要的业务纠纷,维护企业长期与用户建立的良好信誉。1.2课题任务本文将根据软件工程的理论,针对企业仓储管理系统面临的实际问题,对仓储管理系统进行分析、设计与实现,开发出基于Java技术的仓储管理系统,以仓储业务为核心驱动模式,使用分层架构实现具体部分。本文,首先分析仓储系统的具体功能,然后根据实际需要进行需求分析,并将需求分析以电子文档的方式反馈给用户,和用户进行沟通进一步
7、确认需求,而后根据需求分析,使用系统分析和设计的结构化分析方法,以及数据库建模,建立了基于数据库的模型,后台数据使用Mysql完成。基于开放结的开发结构Java.EE,实现了系统登陆模块、供应商信息管理模块、货品信息管理模块、入库存报表生成模块、出库报表生产模块等;最后对系统进行调试并总结,同时对以后的实际工作指明了方向。2 相关技术综述2.1Java技术简介及相关原理Java语言,是一种开发语言,致力于网络应用软件的开发,其具有跨平台性、安全性、完全的面向对象等优点,使其成为互联网应用软件开发的领导者,Java适用于分布式计算环境的面向对象设计的编程语言,其具有简窒、面对对象、分站式、解析型
8、、安全、可靠、可移值、高性能、多线程等特点。企业级多层应用系统的开发一直是所有企业面临的难题,软件开发商和众多程序员,一直在追求和急切的期待一个成熟的、标准的企业级应用平台,来简化和规范企业级应用系统的开发和部署。Java技术的出现,尤其是J2EE(Java2 Platform Enterprise Edition)的推出,正是大家渴望的结果,使得企业级应用系统的开发,由此变得更加快速和方便。要指出的是,J2EE为不同厂商创建的平台产品提供了统一的标准,它自身是一个标准,实现了不同J2EE平台产品之间的交互,建立在Java EE规范框架之上的企业级应用系统的基本构造模块的组件就是J2EE平台,
9、从Web应用到复杂的分布式企业级应用,基本所有业务的应用,全部可以在此技术框架基础上进行构造,本文使用的组件技术主要有Enterprise JavaBean、Servlet、JSP网页等。2.1.1 Enterprise JavaBean(EJB)Enterprise JavaBean(EJB)是J2EE平台的核心,也是J2EE得到业界广泛关注和支持的主要原因。众所周知,J2EE其中的一个主要目标,使企业级多层应用系统的开发变得简单,而业务逻辑的开发才是程序员们专研的对象,EJB它自身就是一种规范,正是基于此类思维的服务器端技术,一个可重用的组件框架被其重新定义了,以实现分站式的、面向对象的业
10、务逻辑。EJB的核心思想,便是将业务逻辑与底层的系统逻辑完全分离开来,软件开发者要将工作的重心转移到业务逻辑上来,使用EJB容器来实现目录服务和底层系统逻辑开发,包含事务处理、持久性、安全性等。根据功能不同,Enterprise JvavaBean的三种定义包括,实体Bean(Entity Bean)、会话Bean(Session Bean)和消息驱动Bean(MessageDriven Bean),有状态和无状态是会话Bean的两种形式,多数的商业逻辑模仿要以使用无状态的会话Bean,比方价格计算等,一般模仿一个客户的会话,使用有状态的会话Bean,它会临时保存客户信息,依据客户的需求,选择
11、调用其它Bean来实现数据的存取,当服务器关闭时或被客户断开连接时,状态信息或者数据在两种状态下都不会保存,会话Bean也就随之消失。一个数据的保存,是通过实体Bean模拟业务数据来实现的,其可以示意为状态信息或数据库中的一条记录。当服务器关闭或客户断开连接后,实体Bean仍然可以保证其数据得以存储;讯息驱动Bean的行为同会话Bean很相象,有差别的便是,仅需要发送消息时向这些Bean,才调用讯息驱动Bean,比方,在需要的时刻,发送用户确认信息等。2.1.2 JSP(Java Server Pages)JSP(Java Server Pages)是一种动态的网页技术标准,它由Sun Mic
12、rosystems 公司与其他公司一同参加建立的标准,JSP是基于Servlet技术的基础上,发展起来的,处于逐渐发展完善之中,现已成为Java服务器编程的核心组成部分。JSP是联合markup(HTML和XML)和Java代码来共同处理的一种动静页面。每页首次被调用时,经过JSP引擎被编译成Servlet,而后被执行,之后屡次调用时,实行编译过的Servlet。JSP供给了多种方法访问Java class、Servlet、Applets和Web Server,于是,Web运用的功能就能够分解成多个明确的定义公用接口的组件,联合JSP将它们结合在一起.2.1.3 ServletServlet是
13、基于请求/响应机制的组件,其用来扩展Web服务器功能,Servlet从客户端(如Web浏览器)获取请求,继而,将反应结果返回到客户端。鉴于Servlet的这种特征,它特别适用于Web运用,Servlet和EJB组件的差别在于,EJB组件供给的服务器端组件特征,不能悉数适用于Servlet,而单一的请求/响应任务处理更适合于Servlet,并且它不需要应用服务器所供给的复杂的服务支持。2.2 StrutsStruts 框架是由 Apache 基金会在 Jakarta中推出的一个子项目,在英文中是支架、支柱的意思,这也反映了在Web应用程序开发中起着重要作用, Struts为Web应用程序的总体框
14、架,可以使开发人员把在部分精力集中在,怎么解决实际业务的题目上来,与此同时 Struts 框架也容许开发人员凭据实际需要实行拓展和定制,从而可以更好的适应用户的需求。选用 Struts 能够简化MVC 设计模型下的 Web 运用的开发设计,很好地落实代码重用,把开发人员从一些繁琐的工作中解放出来,迅速开发出能够充分发挥 JSP/Servlet 优点、并拥有强可扩展性的 Web 运用。2.2.1 MVC80年代Smalltalk开发了一种软件设计模型,即,模型-视图-控制器(MVC)是,如下图2-1所示。模型(Model),主体是应用程序的,Model表示业务数据或业务逻辑;视图(View),应
15、用程序中用户界面关联部分,用户能够看到并与之交互; 控制器(controller),其工作便是依据用户录入,管制用户界面数据的体现和更新model。MVC式的涌现,不但落实了功能和显示模块的分解,同时它还使应用系统的可维护性、可扩展性、可移植性和组件的可复用性在早期的程序中得到了改善,如若不注意对象功能和显示的解耦合,经常会导致程序的繁杂及维护困难。许多VB,Delphi等RAD都有这种现象,甚至目前的C#,Java有时候也会呈现出,把业务逻辑写在显示模块中的问题,MVC设计模型在早期就提出了这一问题,但在Web的开发中植入MVC却是极其困难。主要原因:一是在早期的Web项目的开发中,程序语言
16、和HTML的分离一直难以实现。CGI程式以字符串输出的方式,动态地形成HTML内容;其后伴随着脚本语言的涌现,前面的程式又被调了过来,改为将脚本语言的程序嵌入HTML内容中;这两种方法有一个共同的缺陷,就是它们总是不能将程序语言和HTML分隔开来。第二是,脚本语言的功能比较弱,缺少支撑MVC设计模型的一些必需的基础技能,直到基于J2EE的JSP Model 2问世时才得以改善,它用JSP完成了视图的功能,用Servlet实现控制器的功能,用JavaBean技术实现模型的功能JSP Model 1 与 JSP Model 2,如下图2-2、2-3所示。状态改变状态查询通知改变视图选择用户请求方法
17、调用模 型封装应用程度状态响应状态查询应用程序功能通知视图改变视 图解释模型模型更新请求以送用户输入给控制器允许控制器选择视图控 制 器定义应用程序行为用户动作映射成模型更新选择影响的视图事件图2-1 ,MVC组件模型的关系和功能图234ReqiestJSPBROWSERJavaBeanResponse1Application ServerEnterprise Servers/Data Sources图2-2 JSP Model 1Request5(Model)JavaBean(View)JSP(Controller)ServletBROWSERResponseEnterprise Serve
18、rs/Data Sources1Instantiate23Application Server图2-3 JSP Model 22.2.2 Struts流程ActionServlet可以处理了Struts流程的所有任务,具体工作流程如下图2-4所示。Http Servletorg.apache.struts.action.ActionServletorg.apache.struts.action.RepuestProcessorSerializableorg.apache.struts.action.ActionformActionConfigorg.apache.struts.action.A
19、ctionMappingorg.apache.struts.action.action.ActionActionMessages Serializableorg.apache.struts.action.ActionErrorsActionConfigorg.apache.struts.action.ActionForward图2-4 Struts工作流程ActionServlet是一个FrontController,是一个标准化的Servlet,其利用RequestProcessor来处理转发来的request,ActionMapping是ActionConfig的子类,是对struts-c
20、onfig.xml的一个映射,从中能够取得所有的信息,RequestProcessor依据提交过来的url。ActionForm利用了ViewHelper模型,它是对HTML的form的一个包装。此中包括有validate方法,用于验证form的有效性。ActionForm是一个契合JavaBean规范的类,其所有的特征都应满足get和set对应。针对一些繁杂的系统,可以选用DynaActionForm来构建动态的Form,即利用预制参数来生成Form,如此可以更灵活的扩展程序。ActionErrors是对错误信息的打包,只要在执行action或者form.validate中出现异常,便可涎生
21、一个ActionError,并加入到ActionErrors。在Form考证的过程中,一旦有Error发生,则会将页面重新导向至输入页,并提示错误。 RequsestHandler业务逻辑的实行使用Action,每个Action只建立一个instance,Action并不是线程安全的,因此,不应该在Action中访问特定的资源;一般来说,应改用 Business Delegate 模型来对Business tier进行访问以达到解除耦合。 Struts供给了多种Action供选择调用,一般的Action只可以通过调用execute落实一项任务,而DispatchAction能够根据配置参数落实
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 Java 技术 仓储 管理 系统 设计 实现 学位 论文 40
限制150内