仓库管理系统的开发与实现.docx

上传人:b****6 文档编号:7694158 上传时间:2023-01-25 格式:DOCX 页数:23 大小:121.18KB
下载 相关 举报
仓库管理系统的开发与实现.docx_第1页
第1页 / 共23页
仓库管理系统的开发与实现.docx_第2页
第2页 / 共23页
仓库管理系统的开发与实现.docx_第3页
第3页 / 共23页
仓库管理系统的开发与实现.docx_第4页
第4页 / 共23页
仓库管理系统的开发与实现.docx_第5页
第5页 / 共23页
点击查看更多>>
下载资源
资源描述

仓库管理系统的开发与实现.docx

《仓库管理系统的开发与实现.docx》由会员分享,可在线阅读,更多相关《仓库管理系统的开发与实现.docx(23页珍藏版)》请在冰豆网上搜索。

仓库管理系统的开发与实现.docx

仓库管理系统的开发与实现

Ajax

题目:

仓库管理系统

学号:

姓名:

专业:

2016年1月

仓库管理系统的开发与实现

前言

一.课题研究背景

随着IT技术的不断发展和成熟,信息的重要性日渐显现。

市场信息化的日益扩大,使自动化管理水平,以最快的速度和最准确的数据获得信息并及时作出反馈,使公司能够在同每个公司的仓储部门先前的简单手工工作日趋没落,难以跟上市场的步伐。

为了提高企业的类型的企业竞争中立于不败之地,信息产业的开发和科学管理的运用刻不容缓。

基于此形势,许多公司针对企业仓储部门实行基于关系数据库的信息管理制度,并以此为最高管理层提供决策服务。

为此,本小组也以适应当前企业信息管理制度而尝试开发了本仓储管理系统。

二.本系统的主要工作内容

主要进行了以下几项工作:

(1)对项目需求进行调研,确定系统需求;

(2)对系统的功能模块进行进一步划分,对系统所需实现的功能进行详细分析和总体设计;

3)对数据库进行设计,使用HTML进行页面设计,使用JSP、JavaScript等技术对每个功能模块编写相应代码实现相应功能,使用JDBC技术连接后台数据库;

三.本论文的主要内容

本论文的主要内容为:

(1)阐述了本系统所运用的相关技术,开发背景及环境,系统需求分析,系统总体结构及主要实现功能;

(2)详细讲解了本人负责的系统任务:

数据库设计,产品库存管理模块等。

第一章相关技术简介………………………………………………………..1

1.1SQL语言基础…………………………………………………….1

…………………………………………………....1

……………………………………………………1

………………………………………………2

1.2JSP动态网页技术………………………………………………...2

1.3Struts框架技术…………………………………………………...3

1.4JavaScript技术…………………………………………………....3

1.5B/S模式体系架构………………………………………………...3

1.6CSS………………………………………………………………..4

1.7JDBC访问数据库………………………………………………..4

第二章系统开发及使用环境……………………………………………….5

2.1系统开发平台……………………………………………………5

…………………………………………………...5

…………………………………………………...5

2.2硬件环境…………………………………………………………6

2.3软件运行平台……………………………………………………6

第三章系统总体设计……………………………………………………….7

3.1可行性分析……………………………………………………....7

3.2系统需求分析…………………………………………………....8

3.3系统概要设计…………………………………………………….8

….…………………………………………8

第四章系统详细设计………………………………………………………13

4.1详细设计说明…………………………………………………..13

4.2数据库详细设计………………………………………………...13

……………………………………...13

……………………………………...15

…………………………………………..18

4.3产品库存管理模块详细设计…………………………………...21

…………………………………………………..21

………………………………..21

结论………………………………………………………………………….26

参考文献…………………………………………………………………….27

相关技术简介

主要运用的技术:

SQL数据库技术,JSP动态网页技术,Struts框架技术Javascript脚本语言,CSS,JDBC数据库连接技术等。

1.1SQL语言基础

用户对数据库的使用,是通过数据库管理系统提供的语言来实现的。

不同的数据库管理系统提供不同的数据库语言。

关系数据库管理系统几乎都提供关系数据库标准语言——SQL。

SQL的全称是StructuredQueryLanguage,即结构化查询语言。

SQL语句可以从关系数据库中获得数据,也可以建立数据库、增加数据、修改数据。

1986年ANSI采用SQL语言作为关系数据库系统的标准语言,后被国际化标准组织(ISO)采纳为国际标准。

SQL语言使用方便、功能丰富、简洁易学,是操作数据库的工业标准语言,得到广泛地应用。

例如关系数据库产品DB2、ORACLE等都实现了SQL语言。

同时,其它数据库产品厂家也纷纷推出各自的支持SQL的软件或者与SQL的接口软件。

这样SQL语言很快被整个计算机界认可。

SQL语言是一种非过程化语言,它一次处理一个记录集合,对数据提供自动导航。

SQL语言允许用户在高层的数据结构上工作,而不对单个记录进行操作。

SQL语言不要求用户指定数据的存取方法,而是使用查询优化器,由系统决定对指定数据存取的最快速手段。

当设计者在关系表上定义了索引时,系统会自动利用索引进行快速检索,用户不需知道表上是否有索引或者有什么类型的索引等细节。

SQL语言可以完成许多功能,例如:

●查询数据

●在数据库表格中插入、修改和删除记录

●建立、修改和删除数据对象

●控制对数据和数据对象的存取

●确保数据库的一致性和完整性等

数据查询是关系运算理论在SQL语言中的主要体现,SELECT语句是SQL查询的基本语句,当我们在对一个数据库进各种各样的操作时,使用的最多的就是数据查询,在以SQL为基础的关系数据库中,使用的最多的就是SELECT查询语句。

SELECT语句的完整句法如下:

SELECT目标表的列名或列表达式序列

FROM基本表和(或)视图序列

[WHERE行条件表达式]

[GROUPBY列名序列]

[HAVING组条件表达式]

[ORDERBY列名[ASC│DEAC]…]

我们在SELECT语句中还使用了大量的保留字和通配符以进行各种各样的条件查询。

在系统中有大量的查询按钮,其使用了大量的查询语句,而且这些查询语句大部分使用的是模糊查询,所以大量的使用了模式匹配符LIKE(判断值是否与指定的字符通配格式相符)。

在包含LIKE的查询语句中可以使用两个通配符:

%(百分号):

与零个或多个字符组成的字符串匹配;_(下划线):

与单个字符匹配。

系统中的条件判断往往包含多个条件,这时就需要使用逻辑运算符NOT、AND、OR(用于多条件的逻辑连接),谓词ALL以及保留字DISTINCT等等。

作为SELECT语句还有很多的使用方法,这里就不再叙述。

使用数据库的目的是为了有效地管理数据,而数据的插入、删除和修改则是必不可少的一个功能。

在本系统中就大量地使用了数据插入、删除和修改这三种操作,现做一个简单地介绍。

●数据插入

往数据库的基本表中插入数据使用的是INSERT语句,其方式有两种:

一种是元组值的插入,另一种是查询结果的插入。

在本系统中使用的是前一种方式,其句法如下:

INSERTINTO基本表名(列表名)VALUES(元组值)

●数据删除

往数据库的基本表中删除数据使用的是DELETE语句,其句法如下:

DELETEFROM基本表名[WHERE条件表达式]

在些作一点说明,删除语句实际上是“SELECT*FROM基本表名[WHERE条件表达式]”和DELETE操作的结合,每找到一个元组,就把它删除。

此外,DELETE语句只能从一个基本表中删除元组,WHERE子句中条件可以嵌套,也可以是来自几个基本表的复合条件。

●数据修改

当需要修改基本表中元组的某些列值时,可以用UPDATE语句实现,其句法如下:

UPDATE基本表名

SET列名=值表达式[,列名=值表达式…]

[WHERE条件表达式]

在Delphi中使用SQL语句是很方便的,一般来说,都是通过TQuery组件来使用SQL语言的。

有一点要进行说明,虽然通过TQuery组件来使用SQL语言很方便,但考虑到自己对不同组件的理解程度、个人习惯以及其它各个方面,在本系统中我们采用的是ADO组件来对数据库进行操作。

最简单的方法比如在TADOQuery组件的SQL属性中就可以键入SQL语句,至于详细的使用方法在后面进行介绍。

 

1.2JSP动态网页技术:

JSP(JavaServerPages)技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。

网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。

JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。

Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户。

插入的JAVA程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。

JSP与JavaServlet一样,是在服务器端执行的,通常返回该客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。

1.3Struts框架:

Struts是Apache基金会Jakarta项目组的一个OpenSource项目,它采用MVC(Model-View-Controller)模式,能够很好地帮助java开发者利用J2EE开发Web应用。

和其他的java架构一样,Struts也是面向对象设计,将MVC模式"分离显示逻辑和业务逻辑"的能力发挥得淋漓尽致。

Structs框架的核心是一个弹性的控制及JakartaCommons的一些类库。

Struts有一组相互协作的类(组件)、Servlet以层,基于如JavaServlets,JavaBeans,ResourceBundles与XML等标准技术,以及jsptaglib组成。

基于struts构架的web应用程序基本上符合JSPModel2的设计标准,可以说是一个传统MVC设计模式的一种变化类型。

它的目的是为了帮助我们们减少在运用MVC设计模型来开发Web应用的时间。

1.4JavaScript:

Javascript是一种面向对象的动态类型的区分大小写的客户端脚本语言,主要目的是为了解决服务器端语言遗留的速度问题,为客户提供更流畅的浏览效果。

在HTML基础上,使用Javascript可以开发交互式Web网页。

Javascript的出现使得网页和用户之间实现了一种实时性的、动态的、交互性的关系,使网页包含更多活跃的元素和更加精彩的内容。

Javascript短小精悍,又是在客户机上执行的,大大提高了网页的浏览速度和交互能力。

同时它又是专门为制作Web网页而量身定做的一种简单的编程语言。

1.5B/S模式体系架构

即浏览器/服务器模式体系架构。

近年来,随着Internet/Intranet的迅猛发展,企业纷纷建立自己的Internet,以加强企业内部的联系,增强企业竞争力。

Internet/Intranet中不断出现的网络新技术,带给OA全新的应用模式。

C/S模式与B/S模式的优劣比较见表:

B/S模式

C/S模式

具有分布式的特点,可以随时随地的进行业务处理。

业务扩展简单方便,通过增加网页即可增加服务器功能。

维护简单方便,只要改变网页,即可实现所有用户的同步更新。

开发简单,共享性强。

由于客户端与服务器的直接相连,没有中间环节,因此响应速度快。

客户操作界面设计人性化,具有直观,简单,方便的特点,可以满足客户个性化的需求。

同时由于开发是针对性的,因此操作界面漂亮,样式多样,可以充分满足客户自身的个性化要求

个性化特点明显降低,无法实现具有个性化的设计要求。

操作的习惯性是以鼠标为最基本的操作方式,无法满足快速操作的要求。

页面动态刷新,响应速度明显下降。

专用性的打印输出难以实现,有以对票据等的打印,难以实现套打输出,难以实现某些特殊功能要求

由于是针对性的开发,因此缺少通用性的特点,业务变更或者改变不够灵活,需要重新开发,增加了维护和管理的难度。

需要专门的客户端安装程序,分布功能弱。

兼容性差,对于不同开发工具之间很难兼容,开发成本较高。

表1-1C/S模式与B/S模式的比较

1.6CSS:

CSS,指层叠样式表(CascadingStyleSheets),样式定义如何显示HTML元素,样式通常存储在样式表中,把样式添加到HTML中,是为了解决内容与表现分离的问题。

外部样式表可以极大提高工作效率。

外部样式表通常存储在CSS文件中,多个样式定义可层叠为一。

样式表定义如何显示HTML元素,就像HTML3.2的字体标签和颜色属性所起的作用那样。

样式通常保存在外部的.css文件中。

通过仅仅编辑一个简单的CSS文档,外部样式表使你有能力同时改变站点中所有页面的布局和外观。

1.7JDBC访问数据库:

JDBC(JavaDataBaseConnectivity),即java数据库连接,是一种用于执行SQL语句的JavaAPI,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。

JDBC为工具/数据库开发人员提供了一个标准的API,据此可以构建更高级的工具和接口,使数据库开发人员能够用纯JavaAPI编写数据库应用程序。

系统开发使用环境

2.1系统开发平台

WindowsXP

(1)Eclipse6.6

Eclipse是一个开放源代码的软件开发项目,专注于为高度集成的工具开发提供一个全功能的、具有商业品质的工业平台。

就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。

Eclipse附带了一个标准的插件集,包括Java开发工具(JavaDevelopmentTools,JDT)。

它主要由Eclipse项目、Eclipse工具项目和Eclipse技术项目三个项目组成,具体包括四个部分组成——EclipsePlatform、JDT、CDT和PDE.JDT支持Java开发、CDT支持C开发、PDE用来支持插件开发,EclipsePlatform则是一个开放的可扩展IDE,提供了一个通用的开发平台。

它提供建造块和构造并运行集成软件开发工具的基础。

EclipsePlatform允许工具建造者独立开发与他人工具无缝集成的工具从而无须分辨一个工具功能在哪里结束,而另一个工具功能在哪里开始。

  EclipseSDK(软件开发者包)是EclipsePlatform、JDT和PDE所生产的组件合并,它们可以一次下载。

这些部分在一起提供了一个具有丰富特性的开发环境,允许开发者有效地建造可以无缝集成到EclipsePlatform中的工具。

EclipseSDK由Eclipse项目生产的工具和来自其它开放源代码的第三方软件组合而成。

Eclipse项目生产的软件以CPL发布,第三方组件有各自自身的许可协议。

(3)MySQL:

MySQL是一个真正的多用户、多线程SQL数据库服务器。

SQL(结构化查询语言)是世界上最流行的和标准化的数据库语言。

MySQL是以一个客户机/服务器(C/S)结构的实现,它由一个服务器守护程序mysqld和很多不同的客户程序和库组成。

MySQL是一个精巧的SQL数据库管理系统,由于它的强大功能、灵活性、丰富的应用编程接口(API)以及精巧的系统结构,受到了广大自由软件爱好者甚至是商业软件用户的青睐,特别是与Apache和PHP/PERL结合,为建立基于数据库的动态网站提供了强大动力。

可以使用命令行工具管理MySQL数据库(命令mysql和mysqladmin)。

(4)tomcat5.0:

Tomcat是一个小型的轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP程序的首选。

实际上Tomcat部分是Apache服务器的扩展,但它是独立运行的,所以当你运行tomcat时,它实际上作为一个与Apache独立的进程单独运行的。

当配置正确时,Apache为HTML页面服务,而Tomcat实际上运行JSP页面和Servlet。

另外,Tomcat和IIS、Apache等Web服务器一样,具有处理HTML页面的功能,另外它还是一个Servlet和JSP容器,独立的Servlet容器是Tomcat的默认模式。

不过,Tomcat处理静态HTML的能力不如Apache服务器。

(5)jdk-1_5_0_05:

JDK(JavaDevelopmentKit)是SunMicrosystems针对Java开发员的产品。

自从Java推出以来,JDK已经成为使用最广泛的JavaSDK。

JDK是整个Java的核心,包括了Java运行环境,Java工具和Java基础的类库。

navicatformysql:

NavicatMySQL是一个强大的MySQL数据库服务器管理和开发工具。

它可以与任何3.21或以上版本的MySQL一起工作,并支持大部分的MySQL最新功能,包括触发器、存储过程、函数、事件、视图、管理用户,等等。

其精心设计的图形用户界面(GUI),NavicatMySQL可以让你用一种安全简便的方式快速并容易地创建,组织,访问和共享信息。

它可以使用户连接到本地/远程服务器,提供了几种实用工具,例如数据结构同步、导入/导出、备份和报告,使维护数据的过程很容易。

2.2硬件环境

CPU:

IntelPentium或以上

内存:

512MB或以上

硬盘40GB或以上

显示器无要求

2.3软件运行平台

操作系统:

Windows2003/XP

系统总体设计

软件系统的总体设计大约要经历可行性分析,需求分析,概要设计,详细设计,编码,测试以及维护等七个阶段。

下面所要做的是进行可行性分析、软件需求分析,概要设计和详细设计。

由于任务分配问题,系统详细设计将在下一章作具体讲解,编码过程将在详细设计一章中论述,而测试和维护过程不在本文叙及。

3.1可行性分析:

当接受一个软件开发任务,就进入软件生命的第一个阶段,即进行可行性的研究。

并不是所有问题具有简单的解决办法,许多问题不能在预定的规模之内解决。

因此通过可行性的研究分析可以知道问题。

有无可行性的解决方法,进而避免人力、物力和才力的浪费。

在现行系统初步调查的基础上就可以提出新系统目标,即新系统建立后所要求达到的运行指标,这是系统开发和评价的依据。

系统目标应充分体现,直接为仓库管理系统服务,并且,程序可以分期分批实现。

但是,需要指出的是,系统目标是不可能在总体规划阶段就提得非常具体,它还将在开发过程中逐步明确和定量化。

以达到更加出色的程序系统。

可是,目标的提法不尽相同,例如:

提高仓库管理效率,减轻劳动强度;

提高信息处理速度和准确性;

为仓库管理者提供更方便、科学的服务项目。

系统的目标确定后,就可以从以下四方面对能否实现新系统目标进行可行性分析:

(1)技术可行性

根据当初提出的系统功能、性能及实现系统的各项约束条件,根据新系统目标来衡量所需的技术是否具备,本系统是一个数据库管理和查询的系统,现有的技术以较为成熟,硬件、软件的性能要求、环境条件等各项条件良好,估计利用现有技术条件应完全可以达到该系统的功能目标。

考虑给予的开发时间有限,预计在规定期完成开发的系统难免不完善之处。

(2)运行可行性

新系统的研制和开发是充分考虑工作人员对仓库的易于管理,管理者方便查询设备信息效率。

从而能完全满足使用者的要求。

3.2系统需求分析

在经过前一阶段的分析之后,我们确定了开发课题为仓储管理。

结合此前论述的项目开发背景、可行性分析,我们确定本系统需满足一下功能需求:

(1)用户(经销商和分销商)注册登陆。

(2)在经销商管理界面,经销商用户可实现以下功能:

可注册经销商账户和分销商账户,并管理经销商和分销商用户信息,可对其账户信息进行添加、删除等操作。

进行产品管理,包括对产品类型、品牌等信息的查看添加修改删除等操作。

进行产品库存管理,包括查看产品在库信息,进行产品分配、入库操作,查看入库信息及详细信息,并进行修改删除等。

进行产品分配管理,包括产品分配信息查询,分销商产品配额查询等。

(3)分销商管理界面,用户可进行分销商账户注册修改删除等操作,查看产品在库、已售,个人产品配额等信息。

3.3系统概要设计

在软件需求分析阶段,搞清楚了软件“做什么”的问题,形成了目标系统的逻辑模型。

现在我们所要做的就是要把软件“做什么”的逻辑模型变换为“怎么做”的物理模型,即着手实现软件的需求。

首先,我们需要描述的是系统的总的体系结构。

3.3.1系统结构设计

系统的概要设计中最重要的就是系统的模块化。

模块化是指解决一个复杂问题时自项向下逐层把软件系统划分成若干个模块的过程。

每个模块完成一个特定的功能,所有的模块按某种方法组织起来,成为一个整体,完成整个系统所要求的功能。

将系统划分为多个模块是为了降低软件系统的复杂性,提高可读性、可维护性,但模块的划分不能是任意的,应尽量保持其独立性。

也就是说,每个模块只完成系统要求的独立的子功能,并且与其他模块的联系最少且接口简单,即尽量做到高内聚低耦合,提高模块的独立性,为设计高质量的软件结构奠定基础。

在系统的概要设计中我们采用结构化设计(StructureDesign,简称SD),SD以需求分析阶段产生的数据流图DFD为基础,按一定的步骤映射成软件结构。

我们首先将整个系统化分为几个小问题,小模块,在系统中,我们设计了用户管理、产品管理,产品库存管理、产品分配管理、分销商管理5个小模块。

然后,进一步细分模块,添加细节。

比如,用户管理我们又将其分为经销商用户管理,分销商用户管理,每个用户管理又可分为用户注册、用户删除、信息修改等;产品库存管理分为产品在库信息,产品入库,入库查询等等。

以下为图3-1至图3-3为系统的结构图:

经销商登陆

用户管理

产品管理

产品库存管理

产品分配管理

分销商管理

新用户注册

修改信息

删除用户

添加新用户

修改用户信息

删除用户

经销商用户管理

经销商用户

分销商管理

产品管理

产品类型

产品品牌

产品信息

添加

修改

删除

添加

删除

修改

查询

添加

修改

查询入库信息

查询详情

修改信息

删除信息

查询

添加

入库

分配

产品库存管理

产品在库信息

产品入库

入库查询

产品入库

产品分配管理

分配信息查询

分销商产品配额查询

分销商注册

修改信息

删除信息

详细信息

分销商管理

分销商信息管理

登陆系统

经销商登陆

分销商登陆

系统结构图3-1

系统结构图3-2

在得到系统的第一层功能模块图后,经过进一步地细化,得到系统的子功能模块图:

 

系统结构图3-2-1

系统结构图3-2-2

系统结构图3-2-3

系统结构图3-2-4

系统结构图3-2-5

系统结构图3-3

系统详细设计

4.1详细设计说明:

由于系统由本小组3人共同开发完成,因此本文详细设计部分只介绍本人负责的系统模块。

4.2数据库详细设计:

实例根据上面的设计规划出的实体有库存实体、用户实体、分销商实体、分配实体、入库实体、产品实体等,

各实体的E-R图及其关系描述如下:

图4-1现有库存实体E-R图

图4-2用户实体E-R图

图4-3分销商实体E-R图

图4-4入库实体E-R图

图4-5分配实体E-R图

图4-6产品类型实体E-R图

在上面的实体以及实体之间的关系的基础上,形成数据库中的表格和各个表格之间的关系。

仓库管理系统数据库中各个表格的设计结果如下面的表格所示:

表4-1数据库逻辑结构

表名

字段名

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高中教育 > 理化生

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

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