基于javaweb商品库存信息系统

获取项目源文件,技术交流与指导联系Q:1225467431]

  

本设计的开发是基于B/S结构,采用JSP程序设计语言及Oracle数据库进行开发;论文首先阐述了基于B/S模式商品库存信息管理系统的开发,并对该系统进行了较详细的需求分析,该系统可以为用户的信息进行方便的管理并能对商品库存的各种属性信息进行更新,修改以及删除等操作还可以对库存的信息进行查询等操作使管理过程实现最大程度的效率化和便于信息的收集及管理,本文所研究的商品库存信息管理系统是根据商品库存管理人员的需要,在对比分析了其他公司和一些软件开发商开发的管理系统设计思想和应用情况的基础之上,结合国内现有系统的现状和特点以及未来发展需要的基础上设计开发的。本文详细探讨了商品库存信息管理系统的功能需求、业务流程、系统功能和系统设计等方面的问题。望能利用先进的计算机技术和网络技术来改变目前的经营状况和提高信息管理、服务水平,在市场经济的进一步发展中健康稳定发展,使典当行的信息管理可以便于操作,易于信息管理。而且可以减少企业的经营成本,提高工作效率,满足顾客的需求。

关键字: B/S模式  MVC架构  管理信息系统

ABSTRACT

This design development is based on B/S structure, the JSP programming language and Oracle database development; This thesis first B/S model is based on goods inventory information management system of development, and the system in detail the requirement analysis, this system provides the user information management and convenient to the various attributes goods inventory information updates, modify, and delete operation can also to the stock information query operation management process to achieve maximum efficiency and convenience for information collection and management, this paper studies the inventory information management system is the goods according to the needs of the goods inventory management personnel, in comparison and analysis on the other companies and some software developers development management system management system design thought and application basis, with the existing status and the characteristics of the system and the future development need designed on the basis of the development. This paper goods inventory information management system function requirements, business process, system function and system design, etc. Hope to the use of advanced computer technology and network technology to change the current state of operation and improve the information management, service level, in a market economy in the further development of the healthy and stable development, make the pawn information management can be done operation, easy to information management. And can reduce the enterprise the management cost, improve work efficiency, and meet the demand of customers.

   

Key Words: The B/S model  MVC framework    Management Information System

  

1 前  言1

1.1 系统的应用背景和意义1

1.2 国内外发展状况1

1.3 课题的研究目标1

2 系统开发及主要技术3

2.1 系统运行环境设置3

2.2 JSPJavaBean简介3

2.3 Oracle简介4

2.4 Tomcat简介4

3 商品信息及仓库管理系统需求分析6

3.1 需求分析6

3.2 可行性分析7

3.3 系统性能需求7

3.4 运行需求8

4 商品信息及仓库管理系统总体设计9

4.1 系统功能分析9

4.2 系统总体功能结构9

4.3 系统主要功能模块流程图10

4.4 数据库设计12

5 商品仓库管理系统详细设计19

5.1 初始页面登录模块的设计与实现19

5.2 账户管理模块的设计与实现20

5.3 商品分类管理模块的设计与实现21

5.4 商品信息模块的设计与实现22

5.5 商品入库管理模块的设计与实现24

5.6 库存信息管理模块的设计与实现25

5.7 出库信息管理模块的设计与实现26

5.8 审核信息管理模块的设计与实现28

6 系统测试30

6.1 测试原理30

6.2 测试方案30

结  论36

谢  辞37

参考文献38

1 前  言

1.1 系统的应用背景和意义

1.1.1 课题的来源及意义

随着我国经济建设突飞猛进,管理科学化与管理手段的现代化已经提到非常重要的地位。企、事业单位为了提高自身的管理水平和竞争能力,纷纷投入人力物力,开发适合本单位需求的管理信息系统。中小企业与行政事业单位建立的管理信息系统尤如雨后春笋,一个新的开发和管理信息系统的热潮正在掀起,为此我计划设计商品管理系统。它可以大大减少人力,使人们摆脱了原有系统的局限性,只要在电脑上轻轻地点几下就可以完成查询、输入、修改、输出等功能。非计算机专业的人员也可以熟练地进行操作。人们已经对网络不再感到陌生。在科技飞速发展的今天,电脑信息技术与各行各业进行了有效的结合。人们在网上可以进行网上购物,网上交友,电子商务,网络营销等等。

随着社会的进步和计算机技术的发展,特别是微型计算机的大范围普及,计算机的应用逐渐由科学计算、实时控制等方面向非数值处理的各个领域中渗透。尤其是以微型计算机为处理核心,以数据库管理系统为开发环境的管理系统办工自动化以及商业信息管理等方面的应用,日益受到人们的关注。

1.2 国内外发展状况

“商品信息及仓库管理系统”是用来管理仓库内部的人员、库存、工作时间、定单和设备的软件实施工具。这里所称的“仓库”包括生产和供应领域中各种类型的储存仓库和配送中心。其主要作用是管理和控制仓库所有人出库动态,统计分析库存数据,使决策人员及早发现问题,采取相应措施,调整库存结构,缩短储备周期,加速资金周转,从而保证企业生产中畅通的物流。同时最大限度地降低库存占用,及时补救管理中的漏洞,使库存管理系统实时地反映企业中各个仓库的现时情况,为各类管理人员从不同侧面提供所需信息,以便协调企业经营收到更大效益。

如今,商品信息及仓库管理系统已经在世界各发达国家广泛应用了,而且应用范围越来越广,功能越来越全面,操作越来越简便,成本越来越低廉。主要应用于大中小型企业,工厂,物流公司,超市以及一些科研单位。

1.3 课题的研究目标

采取B/S模式,用户不需要任何媒介就可以不分时间实现商品信息及仓库管理,适应社会的发展、方便用户的需求,使仓库管理不受地域的限制,减轻管理员工作负担、提高工作效率、优化流程是研究的总目标。

主要特点和创新点:

1、易用性,使非计算机专业的管理员,只要掌握了基本的Windows操作方法,即可轻松使用本系统。

2、安全性,准确传输。

3、高效性,界面友好,运行速度快,菜单操作符合人们的日常习惯。

4、本系统以全程监控、实时交互为保障,以方便、高效、安全、快捷为主打,给人以信息时代的全新体验。

 


2 系统开发及主要技术

2.1 系统运行环境设置

系统的运行对于运行环境的要求是:

1.硬件环境

在最低配置的情况下,系统的性能十分的不理想。现在,硬件的性能已经十分的优秀,而其价格又比较低,因此我们可以为服务器配置性能较好的硬件。

处理器:Intel Pentium M 1.60GHz

内存:256MB

硬盘空间:40G

2.软件环境

操作系统:Microsoft Windows

软件:Eclipse 3.2、Apache Tomcat 6.x

数据库:Oracle

2.2 JSP、JavaBean简介

JSP(Java Server Pages)是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。它是在传统的网页HTML文件(*.htm,*.html)中插入JAVA程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件(*.jsp)。JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。

JSP页面由HTML代码和嵌入其中的Java代码所组成。服务器在页面被客户端请求以后对这些Java代码进行处理,然后将生成的HTML页面返回给客户端的浏览器。Java Actions 是JSP的技术基础,而且大型的Web应用程序的开发需要Java Actions和JSP配合才能完成。JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向英特网的所有特点。

JSP的有以下的强势特点(1)一次编写,到处运行。(2)系统的多平台支持。基本上可以在所有平台上的任意环境中开发,在任意环境中进行系统部署,在任意环境中扩展。(3)强大的可伸缩性。从只有一个小的Jar文件就可以运行Actions/JSP,到由多台服务器进行集群和负载均衡,到多台Application进行事务处理,消息处理,一台服务器到无数台服务器,Java显示了一个巨大的生命力。(4)多样化和功能强大的开发工具支持。Java已经有了许多非常优秀的开发工具,而且许多可以免费得到,并且其中许多已经可以顺利的运行于多种平台之下。(5)Java中连接数据库的技术是JDBC,Java程序通过JDBC驱动程序与数据库相连,执行查询、提取数据等操作。Sun公司还开发了JDBC-ODBC bridge,利用此技术Java程序可以访问带有ODBC驱动程序的数据库,目前大多数数据库系统都带有ODBC驱动程序,所以Java程序能访问诸如Oracle、Sybase、MS MySQL和MS Access等数据库。

逻辑处理部分采用JAVA语言,以Actions+JAVA Bean的形式组成逻辑层。并通过TOMCAT服务器进行发布。

JavaBean 是一种JAVA语言写成的可重用组件。为写成JavaBean,类必须是具体的和公共的,并且具有无参数的构造器。JavaBean通过提供符合一致性设计模式的公共方法将内部域暴露称为属性。众所周知,属性名称符合这种模式,其他Java 类可以通过自身机制发现和操作这些JavaBean 属性。所以JavaBean是java类,属于某些特定的译码指导方针,并且扩展了适应性和范围,允许用户访问内部的属性和方法。

用户可以使用JavaBean将功能、处理、值、数据库访问和其他任何可以用java代码创造的对象进行打包,并且其他的开发者可以通过内部的JSP页面、Actions、其他JavaBean、applet程序或者应用来使用这些对象。用户可以认为JavaBean提供了一种随时随地的复制和粘贴的功能,而不用关心任何改变。如今JavaBean扩展为一个java web 应用的标准部件,并且JavaBean部件框架已经扩展为企业版的 Bean(EJB)

Java服务器页面(JSP)是HttpActions的扩展。由于HttpActions大多是用来响应HTTP请求,并返回Web页面(例如HTMLXML),所以不可避免地,在编写Actions时会涉及大量的HTML内容,这给Actions的书写效率和可读性带来很大障碍,JSP便是在这个基础上产生的。其功能是使用HTML的书写格式,在适当的地方加入Java代码片断,将程序员从复杂的HTML中解放出来,更专注于Actions本身的内容。

JSP在首次被访问的时候被应用服务器转换为Actions,在以后的运行中,容器直接调用这个Actions,而不再访问JSP页面。JSP的实质仍然是Actions。

2.3 Oracle简介

Oracle Database,又名Oracle RDBMS,或简称Oracle。是甲骨文公司的一款关系数据库管理系统。到目前仍在数据库市场上占有主要份额。

ORACLE 数据库系统是美国ORACLE公司(甲骨文)提供的以分布式数据库为核心的一组软件产品,是目前最流行的客户/服务器(CLIENT/SERVER)或B/S体系结构的数据库之一。比如SilverStream就是基于数据库的一种中间件。ORACLE数据库是目前世界上使用最为广泛的数据库管理系统,作为一个通用的数据库系统,它具有完整的数据管理功能;作为一个关系数据库,它是一个完备关系的产品;作为分布式数据库它实现了分布式处理功能。但它的所有知识,只要在一种机型上学习了ORACLE知识,便能在各种类型的机器上使用它。

2.4 Tomcat简介

Tomcat是Apache软件基金会(Apache Software Foundation)的Jakarta项目中的一个核心项目,由Apache、Sun和其他一些公司及个人共同开发而成。由于有了Sun的参与和支持,最新的Servlet和JSP规范总是能在Tomcat中得到体现,Tomcat5支持最新的Servlet2.4和JSP2.0规范。因为Tomcat技术先进、性能稳定,而且免费,因而深受Java爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web应用服务器。Tomcat很受广大程序员的喜欢,因为它运行时占用的系统资源小,扩展性好,支持负载平衡与邮件服务等开发应用系统常用的功能;而且它还在不断的改进和完善中,任何一个感兴趣的程序员都可以更改它或在其中加入新的功能。

 

3 商品信息及仓库管理系统需求分析

3.1 需求分析

3.1.1 系统概述

仓库存放的货物品种繁多,堆存方式以及处理过程也非常复杂,随着业务量的增加,仓库管理者需要处理的信息量会大幅上升,因此往往很难及时准确的掌握整个仓库的运作状态。针对这一情况,本系统在满足仓库的基本管理功能基础上发挥信息系统的智能化,减轻仓库管理人员和操作人员的工作负担。

系统主要的实现目标是监控整个仓库的运转情况;提供完善的任务计划功能,由整个操作的指令中心来安排进出任务,确认任务的开始,进货管理和出货管理按其指令执行即可;实时监控所有货物的在线运动情况,实时提供库存变化的信息。

3.1.2 系统总体需求

根据详细的需求分析,企业在库存中面临的主要问题体现在:库存量较大,库存资金周转慢;不能及时统计库存物料;库房人员重复工作多,效率低;不知道库存物资积压时间长短。

本系统从最初的采购到存储和交货,仓库管理将决定企业是否兑现了其承诺。从仓储计划到仓库操作和交叉运输,优化的仓储将有助于大幅减少企业的存货量和存货成本,因为企业将能保持较低的仓库存货水平,优化入库,保管和出库活动,并且协调载货量。

本系统包括以下几个模块。

1、登陆需求

在实际应用中,由于系统的管理都是由专人管理,所以登陆系统,首先必须通过系统的身份验证,这个过程对系统提出以下要求:根据名称和密码来判断是否可以进入系统和根据类型决定拥有的权限。

2、商品信息管理需求

管理员需要对商品仓库相关信息进行管理,包括商品的添加,删除,分类等操作,同时商品的审核人员需要对商品进行审核。

3、商品入库管理需求

管理员需要对新增入库的商品进行管理,包括商品的条形码,商品名称,入库日期,入库数量,经手人,备注等信息。同时还提供按条形码和按名称两种查询方法。

4、库存信息管理需求

商品在入库后,库存数量会随时变化。需要管理员对库存信息进行管理,达到实时显示商品库存信息的目的。同时提供按条形码和按名称两种查询方法。

5、商品出库管理需求

管理员需要对新增出库的商品进行管理,包括商品的条形码,商品名称,入库日期,入库数量,经手人,备注等信息。同时还提供按条形码和按名称两种查询方法。

6、商品审核管理需求

管理员需要对商品的实时信息进行审核,保证商品信息准确无误。审核过的商品信息会添加已审核的标示和被审核日期。

3.2 可行性分析

本系统基于浏览器/服务器体系即人们常说的 B/S体系,系统安装维护简便。数据集中管理,便于分散用户使用,适应互连时代软件的发展趋势。开发技术主要包括JSP,Java,JavaBean,JDBC以及Web应用开发中常用的脚本语言JavaScript技术。Web服务器采用Tomcat,数据库采用MySql数据库系统。由于本系统采用的是Java相关的技术具有“一处编译处处运行”的特性,所以系统能够跨平台使用,可运行于Linux/Unix和Windows系列等操作系统平台。具体可行性为:

1.技术可行性

本系统是一个数据库管理和查询的系统,要求的运行环境、硬件、软件不高,简单实用,利用现有技术条件完全可以达到该系统的功能目标。

2.经济可行性

本系统基于Mysql软件进行开发,开发所用时间、经费不高,系统管理便捷,可达到利用最小资源达到最大效益的结果。

3.系统可行性

本系统的研制和开发是充分得考虑工作人员对仓库的易于管理,方便而又简单。从而能完全满足使用者的要求。

4.管理可行性

利用面向对象的机构化方法,面向对象方法以“对象为中心”,在分析、研究对象及其属性的过程中,根据其内在规律建立求解模型。基于这种方法建立的软件系统,不管外部环境或功能需求如何变化,而对象内在的规律不变,因而不会引起软件结构的整体变化,所以系统是稳定的,利用此方法可以充分达到系统管理可行性的目的。

3.3 系统性能需求

1.数据精确度

该系统输入的数据为整型与字符型。

2.时间特性

包括响应时间,更新处理时间,数据转换与传输时间,运行时间,这些时间尽可能短。

3.适应性

在操作方式,运行环境,与其他软件的接口以及开发计划等发生变化时,可使用系统自带的一个程序来修改现行系统,以适应新的变化。

3.4 运行需求

1.用户界面

超市仓库管理系统应提供简单,层次关系明了,清晰地操作页面,使用户一目了然。尽可能的为用户的登入,查询等功能操作提供方便。快捷按钮的创建也是非常需要的,以方便过户操作。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4 商品信息及仓库管理系统总体设计

4.1 系统功能分析

4.1.1 系统功能概述

用户管理:主要功能包括用户的增加,用户的修改,用户的删除,用户检索等。

商品信息管理:主要功能有商品信息的增加,修改,删除,检索等。

分类信息管理:主要功能有商品类别的增加,删除,检索等。

商品记录管理:主要功能有对商品出库入库记录的管理。

商品审查管理:主要功能有对商品数量的核实。

4.2 系统总体功能结构

为了满足普通用户和管理员能最大限度地使用该系统的要求,本系统采用三层结构体系结构,即JSP+ Struts+ Oracle数据库。如图4-1所示

 

4-1三层体系结构

其中视图部分由HTML标签和JSP技术构成,并应用CSS和JavaScript进行美化。由于本系统属于内部应用系统,风格被定位为简洁大方。整个系统仅使用一张图片,所有美化工作全部交给CSS处理,保证了显示速度,对于要求性能的应用系统来说是最好的选择。

与数据进行交互的工作被放在JavaBean中处理,其中包括选择Bean、插入Bean和修改Bean。同时还设计编写了一些提供共通功能的工具类。例如获取系统时间和日期时间转换等。

系统的具体逻辑处理被放在Actions中。Actions通过Bean与数据库交互,再对数据进行处理和封装,返回给前台页面显示,分离了前台客户端和后台的业务处理,无论是安全性还是可扩展性都非常优秀。

根据需求分析与系统功能设计目标,结合实际情况本系统功能模块设计分为如下,系统功能模块如图4-2所示

 

4-2商品仓库系统功能结构图

4.3 系统主要功能模块流程图

 

图4-3系统主要功能模块流程图

 

4.4 数据库设计

4.4.1 数据库E-R图设计

在本商品仓库管理系统中采用“实体联系模型”(E-R模型)来描述数据库的结构与语义,以对现实世界进行第一次抽象。ER模型直接从现实世界抽象出实体类型及实体间联系,然后用E-R图来表示数据模型。它有两个明显的优点:接近于人的思维,容易理解;与计算机无关,用户容易接受。

1、商品仓库管理系统:根据分析,系统中主要存在以下几个实体:商品信息、商品分类、商品库存等,它们之间的关系如图4-4所示。

 

图4-4商品仓库管理系统E-R图

2、商品仓库管理系统的实体图:

 

 

图4-5 商品分类实体图

 

图4-6库存信息实体图

 

图4-7商品出库信息实体图

 

图4-8商品信息实体图

 

图4-9管理员实体图

 

图4-10商品入库信息实体图

 

图4-11商品审查信息实体图

4.4.2 数据库表的设计

1.管理员表

表名:admin

说明:该表中ID是该表的主键,保存管理员信息,如表4-1所示

表4-1管理员信息表

字段

列名称

类型

宽度

允许空值

主键

识别码

Id

Number

11

用户名

Username

Varchar2

50

密码

Password

Varchar2

50

真实姓名

realname

Varchar2

50

注册日期

regdate

Varchar2

50

最近登录日期

lastlog

Varchar2

50

2.商品分类信息表

表名: s_category

说明:该表中ID是该表的主键,用来保存商品分类信息,如表4-2所示

表4-2商品分类信息表

字段

列名称

类型

宽度

允许空值

主键

识别码

Id

Number

11

商品名称

c_name

Varchar2

50

商品简介

c_intro

Varchar2

50

备注

c_others

Varchar2

50

3.库存审核信息表

表名:s_exam

说明:该表中ID是该表的主键,保存库存审核信息。如表4-3所示

4-3库存审核信息表

字段

列名称

类型

宽度

允许空值

主键

识别码

Id

Number

11

条形码

s_no

Varchar2

50

商品名称

s_name

Varchar2

50

商品原数量

s_oldnum

Varchar2

50

商品数量

s_num

Varchar2

50

入库审核日期

s_date

Varchar2

50

经手人

s_manager

Varchar2

50

备注

s_others

Varchar2

50

4.商品信息表

表名:s_info

说明:该表中ID是该表的主键,用来保存商品信息。如表4-4所示

 

表4-4商品信息表

字段

列名称

类型

宽度

允许空值

主键

识别码

Id

Number

11

条形码

s_no

Varchar2

50

商品名称

s_name

Varchar2

50

生产厂家

s_productor

Varchar2

50

价格

s_price

Varchar2

50

分类

s_category

Varchar2

50

过期时间

s_date

Varchar2

50

备注

s_others

Varchar2

50

5.商品出库信息表

表名:s_library

说明:该表中ID是该表的主键,用来保存商品出库信息。如表4-5所示

4-5商品出库信息表

字段

列名称

类型

宽度

允许空值

主键

识别码

Id

Number

11

条形码

s_no

Varchar2

50

商品名称

s_name

Varchar2

50

出库日期

s_date

Varchar2

50

出库数量

s_num

Varchar2

50

经手人

s_manager

Varchar2

50

备注

s_others

Varchar2

50

 

6.商品入库信息表

表名:s_storage

说明:该表中ID是该表的主键,用来保存商品入库信息。如表4-6所示

4-6商品入库信息表

字段

列名称

类型

宽度

允许空值

主键

识别码

Id

Number

11

条形码

s_no

Varchar2

50

商品名称

s_name

Varchar2

50

入库日期

s_date

Varchar2

50

入库数量

s_num

Varchar2

50

经手人

s_manager

Varchar2

50

备注

s_others

Varchar2

50

7.库存信息表

表名:s_store

说明:该表中ID是该表的主键,用来保存库存信息。如表4-7所示

表4-7库存信息表

字段

列名称

类型

宽度

允许空值

主键

识别码

Id

Number

11

条形码

s_no

Varchar2

50

商品名称

s_name

Varchar2

50

库存数量

s_num

Varchar2

50

入库日期

s_date

Varchar2

50

3.4.3 本系统采用的数据库连接技术简介

JDBC(Java Database Connectivity)是SUN公司制定的一个基于Java数据库接口规范。JDBC为Java开发者使用数据库提供了统一的编程接口,它由一组Java类和接口组成,JDBC使得开发人员可以用纯Java的方式来连接数据库进行各种操作。JDBC主要提供了三项功能:同数据库的连接;向数据库发送SQL语句;处理数据库返回的结果。采用这种技术是在需要对数据库进行访问时通过JDBC驱动程序建立与数据库的物理连接,访问操作结束后断开连接,具体操作有以下5个步骤:

step 1:加载驱动程序与数据库建立连接

step 2:创建一个JDBC声明

step 3:设置执行SQL语句,并将结果存储到一个数据集中

step 4:接受并处理数据集中的记录内容

step 5:关闭创建的对象

JDBC作为一种数据库访问技术,具有使用简单、可移植性强、易于编写和维护等优点,可理想地实现数据库的连接。但是,使用JDBC直接连接,要为每一次请求建立一次数据库连接,对于一次或几次操作来讲,系统的开销不易觉察,但是,就Web程序而言,即使在某一较短的时间段内,其操作请求数往往是数十上百次,系统开销是相当大的。事实上,在一个基于数据库的Web系统中,建立数据库连接的操作将是系统中代价最大的操作之一。而且必须去管理每一个连接,确保他们能被正确关闭,否则将可能导致数据库系统中的内存泄露,最终将不得不重启数据库。

而目前的新思路是用一个JavaBean完成对一个数据表的一种操作,即对一个表最多只需要4个JavaBean来完成查询、增加、修改和删除。根据实际需要,可在JSP中根据需求任意组合要作为查询的字段,即可得到查询条件,因此如何指定查询条件就成为所有查询的JavaBean的主要区别。每次查询得到的查询结果可以选择表中任何列进行自由组合,并可以根据需要确定列的次序,这样就可满足不同查询结果的需要,另外也可以指定用于排序的字段,问题的关键就是如何确定查询条件。在JavaBean中分别定义所需条件的属性,这样生成的JavaBean就具有通用性,同时根据对数据库的四种操作(查询、增加、删除、修改)编写了不同的抽象类。这些抽象类不能被实例化而是对该类数据库操作的抽象和封装。在JSP开发中实际使用的JavaBean是对相应抽象类的继承,并对一些抽象方法进行重载。不过,JavaBean数据库连接技术在建立与数据库的连接时需要耗费较多的时间,而且数据库所支持的并发数量是有限的,过多的并发连接导致数据库运行效率的下降。

    

5 商品仓库管理系统详细设计

5.1 初始页面登录模块的设计与实现

一款优秀的软件人性化的登陆页面是必不可少的。登录功能是实现软件其他功能的第一步。当用户点击登录按钮时,首先校检输入信息的有效性,即检验输入的信息是否为空,若为空则提示用户输入信息,当所有信息不为空的时候检验所输入信息的格式是否正确,格式不正确的话则提示重新输入,当所有输入信息检验正确后连接数据库表,查看是否存在和该用户名和密码匹配的记录,若不存在则在登录页面提示用户名和密码输入错误,若存在该条记录则登录成功。

5.1.1 用户登录模块

在用户登录页面中输入用户名和密码进行登录。如图5-1所示

5-1用户登录图

5.1.2 初始页面模块

用户登录成功后进入初始页面。如图5-2所示

 

5-2初始页面图

5.2 账户管理模块的设计与实现

用户需要对用户进行管理,包括新增用户,修改密码,用户列表。新增用户时需要填写用户名,密码,真实姓名。在用户列表界面显示用户名,注册日期,真实姓名,注册日期,上次登录等信息。

4.2.1 新增用户

在新增用户页面输入用户名,密码,确认密码,真实姓名。如图5-3所示

5-3 新增用户图

5.2.2 修改密码

在修改密码页面输入用户名,密码,新密码,确认密码。如图5-4所示

 

   5-4修改密码图

5.2.3 用户列表 

在用户列表中用户可以查看各个用户的信息。如图5-5所示

 

5-5用户列表图

5.3 商品分类管理模块的设计与实现

用户可以对商品的分类进行管理,包括新增商品分类,商品分类列表。新增商品分类包括分类名称,分类描述,备注等信息。商品分类列表可以查看,删除,修改商品的分类名称,分类描述,备注等信息。

5.3.1 新增商品分类

在新增商品分类页面,用户可以增加商品的分类。包括分类名称,分类描述,备注。如图4-6所示

5-6新增商品分类图

5.3.2 商品分类列表

在商品分类列表页面,用户可以查看商品的分类。包括分类名称,分类描述,备注。还可以进行删除,修改操作。如图5-7所示

5-7商品分类列表图

5.4 商品信息模块的设计与实现

用户可以对商品信息进行管理,包括新增商品信息,商品信息列表,商品信息查询。新增商品信息包括商品的条形码,商品名称,生产厂家,价格,分类,有效期,备注等信息。商品信息列表可以显示商品的上述信息,同时可以进行删除,修改等操作。商品信息查询提供按条形码和名称两种查询方式。

5.4.1 新增商品信息

在新增商品信息页面用户可以新增商品信息。包括条形码,商品名称,生产厂商,价格,分类,有效期,备注。如图5-8所示

5-8新增商品信息图

5.4.2 商品信息列表

在商品信息列表页面用户可以查看商品信息。包括条形码,商品名称,生产厂商,价格,分类,有效期,备注等信息。同时可以进行删除,修改操作。如图5-9所示

5-9商品信息列表图

5.4.3 商品信息查询

在商品信息查询页面用户可以查询商品信息。提供按条形码和按名称两种查询方式。如图5-10所示

 

5-10商品信息查询图

5.5 商品入库管理模块的设计与实现

用户可以对商品入库进行管理,新增商品入库包括商品的条形码,商品名称,入库日期,入库数量,经手人,备注。商品入库列表显示商品的上述信息,同时可以进行删除,修改等操作。商品入库查询提供按名称和按日期两种查询方式。

4.5.1 新增商品入库

在新增商品入库页面用户可以根据条形码选择商品。然后需要选择入库日期和填写入库数量,经手人和备注。如图5-11所示

5-11新增商品入库图

5.5.2 商品入库列表 

在商品入库列表页面用户可以查看商品入库的各种信息。包括条形码,商品名称,入库日期,入库数量,经手人,备注。同时可以进行删除,修改操作。如图5-12所示

5-12商品入库列表图

5.5.3.商品入库查询

在商品入库查询页面用户可以查询某个商品入库的信息。提供按名称和日期两种查询方式。如图5-13所示

5-13商品入库查询图

5.6 库存信息管理模块的设计与实现

用户可以对库存信息进行管理,库存信息列表包括条形码,商品名称,库存数量,审核日期等信息。库存信息查询提供按按条形码和名称两种查询方式。

5.6.1.库存信息列表

在库存信息列表页面用户可以查看库存信息。包括条形码,商品名称,库存数量,审核日期。如图5-14所示

 

5-14库存信息列表图

5.6.2库存信息查询

在库存信息查询页面用户可以查询某个商品库存的信息。提供按名称和条形码两种查询方式。如图5-15所示

5-15库存信息查询图

5.7 出库信息管理模块的设计与实现

用户可以对商品入库进行管理,新增商品出库包括商品的条形码,商品名称,入库日期,出库数量,经手人,备注。商品出库列表显示商品的上述信息,同时可以进行删除,修改等操作。商品出库查询提供按名称和按日期两种查询方式。

5.7.1 新增出库信息

在新增商品出库页面用户可以根据条形码选择商品。然后需要选择出库日期和填写出库数量,经手人和备注。如图5-16所示

 

5-16新增商品出库图

5.7.2出库信息列表

在商品出库列表页面用户可以查看商品出库的各种信息。包括条形码,商品名称,出库日期,出库数量,经手人,备注。同时可以进行删除,修改操作。如图4-17所示

 

5-17出库信息列表图

5.7.3出库信息查询

在商品出库查询页面用户可以查询某个商品出库的信息。提供按名称和日期两种查询方式。如图5-18所示

5-18出库信息查询图

5.8 审核信息管理模块的设计与实现

管理员可以对商品进行审核,确保商品信息的准确无误。新增审核信息包括条形码,商品名称,原库存,审核数量,审核日期,审核人,备注等信息。审核信息列表可以显示商品的上述信息,同时还可以进行删除,修改等操作。审核信息查询提供了按日期和按名称两种查询方式。

4.8.1新增审核信息

在新增审核信息页面用户可以审核某个商品的信息。通过条形码选择某个商品,然后填写原库存,库存数量,审核日期,审核人,备注。如图5-19所示

 

5-19新增审核信息图

5.8.2 审核信息列表

在审核信息列表页面用户可以查看商品审核的信息。包括条形码,商品名称,原库存,审核数量,审核日期,审核人,备注。同时可以进行删除,修改操作。如图5-20所示

 

5-20审核信息列表图

5.8.3审核信息查询

在审核信息查询页面用户可以查询某个商品审核的信息。提供按名称和日期两种查询方式。如图5-21所示

 

5-21审核信息查询图

 

 

 

6 系统测试

6.1 测试原理

软件是由人来完成的,所有由人做的工作都不会是完美无缺的。问题在于应该如何去避免错误的产生和消除已经产生的错误,使程序中的错误密度达到尽可能低的程度。

随着软件规模的增大,软件的复杂程度也越来越大,与其他系统的接口不断增多应用越来越广泛,集成度越来越高,这使得没有现代软件开发经验的人很难理解它。为了尽可能地减少错误,软件测试这一环节占有重要的地位。

采用按照测试用例所依据的信息来源分类的原则,将测试方法作如下分类:以程序为基础的测试。测试用例来源于对程序的分析,并以程序被执行的程度来判断测试是否充分,这种方法被称为“白盒法”。白盒法主要用于单元测试。以需求规约和需求描述为基础的测试。测试用例来源于对软件的需求描述和需求规约的分析,并根据需求描述和需求规约所规定的功能和性能是否得到了充分的检验来判断测试是否充分,这种方法被称为“黑盒法”。黑盒法主要用于系统测试。还有一种是程序和需求相结合的测试。测试用例来源于对需求和实现的综合考虑,这种方法被成为“灰盒法”。灰盒法主要用于集成测试。

黑盒测试就是把测试对象看做是一个黑盒子。测试人员完全不考虑程序内部的逻辑结构和内部特性。只依据程序的需求规格说明书,检查程序的功能是否符合它的功能说明。不需测试软件产品的内部结构和处理过程。

本系统采用黑盒测试,以测试用例来进行测试。

6.2 测试方案

采用黑盒测试,测试用例如下所示:

表6-1测试1

测试说明

账户管理功能测试。

测试需求

在账户管理页面能够管理用户。

测试用例

1)在新建用户页面不要输入任何信息直接点击添加按钮。

2)在新建用户页面输入用户名yuxiaodan、密码yuxiaodan、确认密码yuxiaodan、真实姓名于小丹。

3)在修改密码页面输入用户名yuxiaodan、密码yuxiaodan、新密码xiaodan、确认密码xiaodan。

4)在用户列表页面删除用户yuxiaodan.

期望输出

1)在新建用户页面输出“请输入用户名!”。

2)在新建用户页面输出“新建成功!”。

3)在修改密码页面输出“修改成功!”。

4)在用户列表页面输出“删除成功!”。

实际输出

1)在新建用户页面输出“请输入用户名!”。

2)在新建用户页面输出“新建成功!”。

3)在修改密码页面输出“修改成功!”。

4)在用户列表页面输出“删除成功!”。

 

6-1输入为空报错截图

6-2测试

测试说明

商品分类管理功能测试。

测试需求

管理员可以在后台新增,显示,查询商品分类列表。

测试用例

1)在新增商品信息列表中输入分类名称生活用品、分类描述毛巾,备注该货源紧缺。

2)在商品信息列表中点击上述产品的删除按钮。

3)在商品信息查询中查询分类名称为生活用品的商品。

期望输出

1)在新增商品信息列表中显示新增成功。

2)在商品信息列表中弹出对话框,确定删除该商品。

3)查询出生活用品是毛巾的商品,显示出其详细信息。

实际输出

1)在新增商品信息列表中显示新增成功。

2)在商品信息列表中弹出对话框,是否删除该商品。

3)查询出分类名称是生活用品是毛巾的商品,显示出其详细信息。

 

6-2确定是否删除新增商品列表

表6-3测试3

测试说明

商品信息管理功能测试。

测试需求

管理员可以在后台新增,显示,查询商品信息。

测试用例

1)在新增商品信息列表中输入条形码134679、商品名称康师傅绿茶、生产厂商康师傅(沈阳)饮品有限公司、价格1.5、分类饮料、有效期12个月、备注该货源紧缺。

2)在商品信息列表中点击上述产品的删除按钮。

3)在商品信息查询中查询条形码为134679的商品。

期望输出

1)在新增商品信息列表中显示新增成功。

2)在商品信息列表中弹出对话框,确定删除该商品。

3)查询出条形码为134679的商品,显示出其详细信息。

实际输出

1)在新增商品信息列表中显示新增成功。

2)在商品信息列表中弹出对话框,是否删除该商品。

3)查询出条形码为134679的商品,显示出其详细信息。

 

6-3确定是否删除数据

6-4测试

测试说明

商品出库信息管理功能测试。

测试需求

管理员可以在后台新增,出库,查询商品信息。

测试用例

1)在新增商品出库信息列表中输入条形码134679、商品名称康师傅绿茶、出库日期2012-12-24、出库数量 20、经手人 于小丹、备注无。

2)在商品信息列表中点击上述产品的删除按钮。

3)在商品信息查询中查询条形码为134679的商品。

期望输出

1)在新增商品出库信息列表中显示新增成功。

2)在出库信息列表中弹出对话框,确定是否删除该商品。

3)查询出条形码为134679的商品,显示出其详细信息。

实际输出

1)在新增商品出库信息列表中显示新增成功。

2)在商品信息列表中弹出对话框,确定是否删除该商品。

3)查询出条形码为134679的商品,显示出其详细信息。

 

6-4确定是否删除商品出库信息

6-5测试

测试说明

商品审核信息管理功能测试。

测试需求

管理员可以在后台新增,审核商品信息。

测试用例

1)在新增商品审核信息列表中输入条形码134679、商品名称康师傅绿茶、原库存 100、审核数量 80、审核日期 2012-12-24、审核人 于小丹、备注无。

2)在商品信息列表中点击上述产品的删除按钮。

3)在商品信息查询中查询条形码为134679的商品。

期望输出

1)在新增商品审核信息列表中显示新增成功。

2)在出库信息列表中弹出对话框,确定是否删除该商品。

3)查询出条形码为134679的商品,显示出其详细信息。

实际输出

1)在新增商品审核信息列表中显示新增成功。

2)在商品信息列表中弹出对话框,确定是否删除该商品。

3)查询出条形码为134679的商品,显示出其详细信息。

 

6-5确定删除某商品审核信息

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

结  论

经过这次毕业设计,再次熟悉了一个软件系统开发的整个过程,进一步掌握四年多来在软件方面学习的课程,尤其是JAVA语言、JSP教程、数据库、软件工程课程等。本设计的题目是商品仓库管理系统的设计与实现,计划时间是14周完成,并制定了进度计划。在设计实现过程中,遵守该进度计划,按时完成了代码设计与论文书写。

在系统的开发过程中,java语言,jsp页面设计,数据库连接等等所掌握的实际应用性比较弱,不可避免地遇到了各种各样的问题。如:起先对建立数据库中表的关系上显得复杂,关系不明确,联系不紧凑,建表过多,阅读一些参考资料,参考实例之后对数据库表做了较大的整合,现在是表的实体更符合实际,关系相对简洁明了。JavaBean 的运用,起先几乎每个Actions对应一个连接数据库的bean,使得有较多的冗余代码,不同模块的JavaBean类中的逻辑代码有较多重复,在同学和老师帮助下,对此进行了大修改,最终的JavaBean类似于接口的工作,通过不同模块的不同参数值传递到几个Bean来实现对数据库的操作,提高了代码的复用及高效。

由于开发经验的不足与水平有,在系统设计中还存在许多不足之处,比如:界面的美化,由于时间的仓促,在开发设计中没有对系统的界面的美化做太多的工作,以至于实际使用过程中,感觉到界面呆板,缺乏美感。受开发条件限制,系统只利用了本地数据库管理系统MySQL,它同Web服务器处于同一系统中,当数据量很大时,服务器的计算负担会很重,响应比较慢。又如,没有实现多条记录的批量删除和添加的功能等等。

通过这个设计,我收获了很多,学到想做好一件事首先要有一个好的计划、统筹的安排,还要具有良好的团队合作精神,以前很多不懂的东西都通过这次实践找到了答案。总之,本次设计让我感受了软件开发的整个过程,不仅是对我在大学所学知识的一个综合运用,也是一次增长知识和经验的好机会,同时也使我学会了许多处理、解决问题的方法,大大提高了自己的动手能力,为以后走上工作岗位打下了良好的基础。 

总之,本次开发的系统完成了前期制定的任务与计划,符合了毕业设计的要求,对自身而言,累计了相当丰富的经验,相信在未来的工作中能对自己有所帮助。

  

天下没有不散的宴席,虽然大四的生活多半时间没有呆在学校,但是论文致谢语写的那一刻也就真正标志着我即将与这所学校别离了,没有伤感,更多的是遗憾,但是总归不如意事十有八九,过去的不能挽回,人应该大胆向前看,所以这段文字应该像它的标题一样充满感恩和致谢,感谢四年来在我的成长道路上扶持过我的,指点过我,教育过我的人。

经过数个星期的努力,我的毕业设计和毕业设计说明书终于完成了。在经过了前期的实习经验,到中期的修改和讨论,及后期的反复斟酌,我希望能尽自己最大的努力,写出一篇具有现实意义的论文,但是在具体的实施过程中,我还是遇到了相当多当初没有预料到的困难,也曾令我迷茫和彷徨,论文最终的定稿也没有我想象中的那么完美,但是总归是自己尽力完成的,这是我自己的心血。在这次的毕业设计中我学会了很多课外的专业知识,虽然还没有琢磨地很透彻,但相比以前,已经有了很大的改进。同时感谢各位老师等四年来对我的教育培养,他们细心指导我的学习。在此,我要向各位老师深深地鞠上一躬。是他们为我提供了良好的学习环境和机会。感谢各位专家和评委耐心审阅我的论文,提出许多宝贵的意见和建议,还要感谢所有在大学期间传授我知识的老师,每一位老师的悉心教导都是我完成这篇论文的基础。人生有太多的理想,有理想就会有希望,惹生是那么的不确定,学生绝不会甘于平庸和妥协的。

在我的毕业论文即将完成之际,我的大学生活也接近尾声,要说的是,四年来我的大学同学不论在学习上还是生活上都给了我极大的帮助。谢谢那些给过我帮助的人们,谢谢你们,是你们帮助我走到现在。

我更要感谢父母的养育之恩,他们默默无闻地在各方面给与我最有力的支持。最后,我要真诚地祝福每一位给予我帮助的人:平安,幸福。谢谢你们!


参考文献

[1] 张海潘.软件工程导论(第三版)[M].清华大学出版社.2002

[2] 智雨青.彭宴飞.李季.Oracle9iDBA认证教材.清华大学出版社.2003

[3] 耿祥义.张跃平.JAVA2实用教程(第二版)[M].清华大学出版社.2002

[4] 冯燕奎.赵德奎.JSP实用案例教程[M].清华大学出版社.2004.1

[5] 飞思科技产品研发中心.JSP应用开发详解(第二版)[M].电子工业出版社.2005

[6] 赵振平.Oracle数据库精讲与疑难解析.北京:电子工业出版社.2007

[7] 孙卫琴.精通Struts Java Web设计与开发[M].电子工业出版社.2004.2

[8] 邝孔武.王小敏.信息系统分析与设计[M].清华大学出版社.2003

[9] 张海藩.软件工程[M].人民邮电出版社.2002.9

[10] 史济民.软件工程――原理和方法与应用[M].等教育出版社.2002.5

[11] Campbell R.Mconnell Stanley L.Brue.Micro-Economics[J].set in century oldstyle by York Graphic Services.2003

猜你喜欢

转载自www.cnblogs.com/dejyyhg/p/12657441.html
今日推荐