中小型超市管理系统前台设计与实现完整版.docx
《中小型超市管理系统前台设计与实现完整版.docx》由会员分享,可在线阅读,更多相关《中小型超市管理系统前台设计与实现完整版.docx(42页珍藏版)》请在冰豆网上搜索。
中小型超市管理系统前台设计与实现完整版
本科毕业设计论文
题目中小型超市管理系统前台设计与实现
专业名称计算机信息与技术
学生姓名
指导教师
毕业时间
设计
论文
毕业任务书
一、题目:
中小型超市管理系统前台设计与实现
二、指导思想和目的要求:
1.指导学生综合运用所学的基础理论知识和专业技术知识分析和解决科研开发工作中的实际问题,培养学生的研发能力;
2.学习和掌握利用各种资料、知识分析和解决实际问题的思路及方法;
3.了解和掌握超市管理系统特点,学习超市系统相关内容模块;
4.通过实践,学习JAVA编程语言,掌握常用的编程技能,理解JAVA、MySQL等概念并能具体应用。
5.通过这次毕业设计,让我能够了解开发一个软件产品所要经历的基本过程,掌握软件开发过程中的设计方法,实现方法以及测试方法,并最终能够提供一个有实用的软件产品。
三、主要技术指标:
1.使用JAVA提供的控件与数据库结合,可方便快速的开发信息管理系统
2.MySQL在该平台中的应用:
创建数据库时如何建立和存取数据。
四、进度与要求:
1.第1周:
了解毕业设计任务和熟悉开发环境,准备相关资料;
2.第2周:
设计基本方案、分析论证;
3.第3周~~第6周:
设计方案研制开发;
4.第7周:
中期检查;
5.第8周~~第9周:
系统调试/验证、修改和完善;
6.第10周~~第11周:
毕业设计论文及其相关技术资料文档的整理;
7.第12周~~第14周:
准备毕业设计(论文)答辩,成果演示、验收。
五、主要参考书及参考资料:
【1】.张孝祥,徐明华,单兴华著.Java基础与案例开发详解.北京:
清华大学出版社.2009年9月
【2】.埃克尔著.Java编程思想.北京:
机械工业出版社.2007年6月
【3】.卢瀚,王春斌著.JavaWeb开发实战1200例.北京:
清华大学出版社.2011年1月
【4】.王志刚,江友华著.MySQL高效编程.北京:
人民邮电出版社.2005年7月
【5】.WattsS.Humphrey著.软件工程规范.北京:
清华大学出版社.2006年8月
【6】.席国庆著.深入体验Java项目开发.北京:
清华大学出版社.2011年7月
【7】.毕庶伟著.管理信息系统分析与设计.北京:
机械工业出版社.1992年
【8】.张基温著.信息系统开发案例.北京:
清华大学出版社.1999年
【9】.(美)PaulC.Jorgensen著.软件测试.北京:
机械工业出版社.2009年3月
学生指导老师院(系)主任
摘要
随着科学技术的飞速发展,计算机在日常生活中应用越来越普及,利用计算机实现超市的管理系统已迫在眉睫。
当超市发展到一定规模时,传统的常规管理、收银系统显然已经不能满足发展的需要,所以如何实现规范化,标准化的管理系统来提高超市的管理效率,就成为了一个新课题。
21世纪是网络经济,电子商务信息化的天下,所以对于中小型超市开发一款经济、实用的管理软件是很有必要的。
超市管理系统是市场上很流行的,在超市中最常用的一款软件,它主要包含以下几个模块:
系统管理员的设定,数据的录入和删除,数据的汇总和查询,进货和退货管理模块、销售模块、库存模块、人事管理模块、系统模块等,实现了对超市人员,超市商品等各个方面全面、及时、动态的管理。
可以有效的利用最少的资源将整个超市联系成为一个整体。
随着计算机网络技术以及数据库技术的迅速发展,管理信息系统得到了广泛应用。
通过周密的设计,健壮的程序,可以将原本需要很多人力的事情,简化到一台PC机就可以完成,最大限度的降低了成本,同时也避免了错误,因此一个自动化的超市货品管理系统的开发非常必要。
在此次系统的开发过程中,我主要负责超市前台的制作与实现。
超市前台系统包括整体设计的框架,各模块的位置和功能,前台与后台的切换方式,数据库的设计和后台样式的设计等工作。
此次系统的设计我经过分析与考察之后,决定采用C/S即Client/Server(客户机/服务器)结构,通过将任务合理分配到Client端和Server端,降低了系统的通讯开销,从而节省了成本。
当然服务器方面的设计我现在还力不能及的,但是相信以后通过学习之后一定可以实现。
关键词:
管理系统,数据库
ABSTRACT
Withtherapiddevelopmentofscienceandtechnology,computerapplicationindailylifeisbecomingincreasinglypopular;theuseofcomputersupermarketmanagementsystemisimminent.Whenthesupermarketdevelopmenttoacertainsize,theconventionalmanagement,cashregistersystemsapparentlycannotmeettheneedsofthedevelopment,sohowtoachievestandardization,standardizationofmanagementsystemstoimprovethemanagementefficiencyofthesupermarkethasbecomeanewtopic.The21stcenturyisthenetworkeconomy,e-commerceinformationtechnologyworld,soforsmallandmedium-sizedsupermarkettodevelopeconomical,practicalmanagementsoftwareisnecessary.
Supermarketmanagementsystemisverypopularonthemarket,themostcommonlyusedpieceofsoftwareinthesupermarket,itmainlycontainsthefollowingmodules:
systemadministratorsetting,dataentry,anddeletedataaggregationandquery,purchase,andreturnmanagementmodule,salesmodule,inventorymodule,personnelmanagementmodule,thesystemmodule,supermarketstaff,supermarketgoodscomprehensive,timelyanddynamicmanagement.Caneffectivelyusetheleastresourcestothesupermarketlinkedintoanoverall
Withtherapiddevelopmentofcomputernetworktechnologyanddatabasetechnology,managementinformationsystemshavebeenwidelyapplied.Throughcarefuldesign,robustprocedures,whichrequirealotofhumanthings,reducedtoasinglePCcanbecompleted,reducecosts,butalsotoavoidanerror,anautomatedsupermarketgoodsmanagementsystemthedevelopmentisverynecessary.
Inthesystemdevelopmentprocess,Iamresponsiblefortheproductionofthesupermarketfront.Supermarketfrontsystemincludingtheframeworkoftheoveralldesign,locationandfunctionofeachmodule,foregroundandbackgroundoftheswitchingmode,databasedesignandback-officestyledesign.
Thedesignofthesystemafteranalysisandstudy,IdecidedtousetheC/SClient/Server(Client/Server)structure,thetasksassignedtotheClientsideandServerside,toreducethecommunicationoverheadofthesystem,thussavingcosts.Ofcourse,server-sidedesignalsoforcecannotandIbelievethefuturebylearningafteracertaincanbeachieved
Keywords:
Managementsystem,Database
第1章概述
1.1超市系统的开发背景和意义
二十一世纪人类已进入到了一个高速发展的信息时代。
社会的高度信息化要求各企事业单位不停的提高信息管理技术以适应社会的发展。
随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。
特别是Internet技术的推广和信息高速公路的建立,使IT产业在市场竞争中越发显示出其独特的优势,步入信息化时代,有巨大的数据信息等待加工处理和传输,这使得对书数据库的进一步开发和利用显得尤为迫切。
作为国内市场的一些中小型超市,它们在信息化过程中的步伐要落后于大中型超市,而对于这些企业的资源管理,信息的存储和处理也显得迫切需要,要适应市场竞争,就需要有高效的处理方式和管理方法,因此加快超市的信息化进程是必可少的。
我国超市形成在20世纪90年代初期,现在已经成为我国零售业的一种重要形态,为国民经济的发展发挥了重要的作用。
随着超市高速的发展,其经营管理也变得愈加复杂,早期的售货员站柜台的形式早已不能满足现有销售也的发展,这样就迫切地需要引入新的管理技术。
但在目前状况下,大型超市早已使用优良的管理软件,但中小型超市仍存在落后的一面,如:
不能有效地管理每种商品,收款结算速度慢,容易出现营业差错,不宜进行商品调价,盘点效率低等,经济形态的高速发展,使超市经营管理也变得愈加复杂,日常所需要处理的数据量也逐渐增大,商业运转的中间环节也越来越多,原始的人工管理已无法应对这复杂的市场。
依靠现代化的计算机信息处理技术来管理超市,从而节省了大量的人力、物力,改善了员工的工作条件,减轻了劳动强度,并且能够准确快速反映出商品的进、销、存等状况和各种反馈信息分析,使管理人员快速对市场的变化做出相应的决策,加快超市经营管理效率并且降低了超市日常成本。
本设计运用MySQL数据库设计软件与eclipse软件设计了一个中小型超市管理系统。
使用该软件。
超市管理人员可以对超市的各种情况进行管理,像货物的出纳,进货,卖货,退货,人员的调配等进行管理。
而且本系统只要会懂得一点的电脑知识就能很快的上手,不存在一些岗前培训什么的,方便用户使用。
在计算机日益普及,软硬件迅速发展的当今社会上,用户使用计算机来管理强大的数据信息,不失是节省人力和时间的良策。
1.2本系统的开发目的和内容
1)目的
目前市面上流行的管理管理系统不少。
但是对于中小型来说,不需要大型的数据库系统。
只需要一个操作方便,功能实用,能满足本超市对数据的管理及需求的系统。
我们的目标就是在于开发一个功能实用、操作方便,简单明了的超市管理系统。
2)内容
本系统是根据超市管理系统模块进行功能分析和设计得出的。
可以满足中小型超市管理、销售的需求。
可以帮助超市提高工作效率,降低日常成本,实现超市管理的系统化、规范化和自动化。
开发一个功能实用、操作方便,简单明了的超市管理系统。
能够录入商品的基本资料,在操作上能够完成诸如添加、修改、删除、按各种条件进行查询和销售,管理员和会员的设置及密码修改等方面的工作,基本满足日常业务的需要。
1.3国内外超市管理系统的发展
由于国外超市的信息化建设方面起步较早,加上资金、技术等方面的诸多优势,使得国外超市的管理系统实施成功率较高,也取得了显著的经济和社会效益,在超市管理的基础理论研究方面也取得了相当大的成就。
我国自80年代开始,才着手开发和应用管理系统,尽管经过了国内许多研究单位和企业的共同努力,使我国在超市管理系统建设方面取得了很大成功,但是由于多方面因素的制约,我们国家和国外的差距还是比较大的。
第2章开发环境和相关技术介绍
本系统的开发应用了MySQL创建数据库,并在eclipse环境下主要应用Java编程语言实现各项功能及对数据库的操作。
在本章以下的各节将依次对Java、eclipse及MySQL数据库和技术进行简单介绍。
2.1Java开发工具
2.1.1Java简介
Java它最初被命名为Oak,目标设定在家用电器等小型系统的编程语言,来解决诸如电视机、电话、闹钟、烤面包机等家用电器的控制和通讯问题。
由于这些智能化家电的市场需求没有预期的高,Sun放弃了该项计划。
就在Oak几近失败之时,随着互联网的发展,Sun看到了Oak在计算机网络上的广阔应用前景,于是改造了Oak,以“Java”的名称正式发布。
Java编程语言的风格十分接近C、C++语言。
Java是一个纯的面向对象的程序设计语言,它继承了C++语言面向对象技术的核心,Java舍弃了C++语言中容易引起错误的指针(以引用取代)、运算符重载(operatoroverloading)、多重继承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的对象所占据的内存空间,使得程序员不用再为内存管理而担忧。
在JavaSE1.5版本中,Java又引入了泛型编程(GenericProgramming)、类型安全的枚举、不定长参数和自动装/拆箱等语言特性。
Java不同于一般的编译执行计算机语言和解释执行计算机语言。
它首先将源代码编译成二进制字节码(bytecode),然后依赖各种不同平台上的虚拟机来解释执行字节码,从而实现了“一次编译、到处执行”的跨平台特性。
不过,每次的编译执行需要消耗一定的时间,这同时也在一定程度上降低了Java程序的运行效率。
但在J2SE1.4.2发布后,Java的执行速度有了大幅提升。
与传统程序不同,Sun公司在推出Java之际就将其作为一种开放的技术。
全球数以万计的Java开发公司被要求所设计的Java软件必须相互兼容。
“Java语言靠群体的力量而非公司的力量”是Sun公司的口号之一,并获得了广大软件开发商的认同。
这与微软公司所倡导的注重精英和封闭式的模式完全不同。
Sun公司对Java编程语言的解释是:
Java编程语言是个简单、面向对象、分布式、解释性、健壮、安全与系统无关、可移植、高性能、多线程和动态的语言。
2.1.2Java的特点
1)平台无关性
平台无关性是指Java能运行于不同的平台。
Java引进虚拟机原理,并运行于虚拟机,实现不同平台的Java接口之间。
使用Java编写的程序能在世界范围内共享。
Java的数据类型与机器无关,Java虚拟机(JavaVirtualMachine)是建立在硬件和操作系统之上,实现Java二进制代码的解释执行功能,提供于不同平台的接口的。
2)面向对象的程序设计
Java吸取了C++面向对象的概念,将数据封装于类中,利用类的优点,实现了程序的简洁性和便于维护性。
类的封装性、继承性等有关对象的特性,使程序代码只需一次编译,然后通过上述特性反复利用。
程序员只需把主要精力用在类和接口的设计和应用上。
Java提供了众多的一般对象的类,通过继承即可以使用父类的方法。
在Java中,类的继承关系是单一的非多重的,一个子类中只有一个父类,子类的父类又有一个父类。
Java提供的Object类及其子类的继承关系如同一棵倒立的树形,根类为Object类,Object类功能强大,经常会使用到它及其它派生的子类。
3)健壮性
Java致力于检查程序在编译和运行时的错误。
类型检查帮助检查出许多开发早期出现的错误。
Java自己操纵内存减少了内存出错的可能性。
Java还实现了真数组,避免了覆盖数据的可能,这些功能特征大大提高了开发Java应用程序的周期。
并且Java还提供了Null指针检测、数组边界检测、异常出口、Bytecode校验等功能。
2.2开发环境运行平台eclipse简介
Eclipse是一个开放源代码的、基于Java的可扩展开发平台。
就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。
幸运的是,Eclipse附带了一个标准的插件集,包括Java开发工具(JavaDevelopmentKit,JDK)。
虽然大多数用户很乐于将Eclipse当作Java集成开发环境(IDE)来使用,但Eclipse的目标却不仅限于此。
Eclipse还包括插件开发环境(Plug-inDevelopmentEnvironment,PDE),这个组件主要针对希望扩展Eclipse的软件开发人员,因为它允许他们构建与Eclipse环境无缝集成的工具。
由于Eclipse中的每样东西都是插件,对于给Eclipse提供插件,以及给用户提供一致和统一的集成开发环境而言,所有工具开发人员都具有同等的发挥场所。
这种平等和一致性并不仅限于Java开发工具。
尽管Eclipse是使用Java语言开发的,但它的用途并不限于Java语言;例如,支持诸如C/C++和COBOL等编程语言的插件已经可用,或预计将会推出。
Eclipse框架还可用来作为与软件开发无关的其他应用程序类型的基础,比如内容管理系统。
基于Eclipse的应用程序的一个突出例子是IBM®Rational®SoftwareArchitect,它构成了IBMJava开发工具系列的基础。
2.3数据库MySQL
2.3.1数据库MySQL简介
MySQL是一种开放源代码的关系型数据库管理系统(RDBMS),MySQL数据库系统使用最常用的数据库管理语言--结构化查询语言(SQL)进行数据库管理。
由于MySQL是开放源代码的,因此任何人都可以在GeneralPublicLicense的许可下下载并根据个性化的需要对其进行修改。
MySQL因为其速度、可靠性和适应性而备受关注。
大多数人都认为在不需要事务化处理的情况下,MySQL是管理内容最好的选择。
MySQL这个名字,起源不是很明确。
一个比较有影响的说法是,基本指南和大量的库和工具带有前缀“my”已经有10年以上,而且不管怎样,MySQLAB创始人之一的MontyWidenius的女儿也叫My。
这两个到底是哪一个给出了MySQL这个名字至今依然是个迷,包括开发者在内也不知道。
MySQL的海豚标志的名字叫“sakila”,它是由MySQLAB的创始人从用户在“海豚命名”的竞赛中建议的大量的名字表中选出的。
获胜的名字是由来自非洲斯威士兰的开源软件开发者。
2.3.2数据库MySQL的特点
1)使用C和C++编写,并使用了多种编译器进行测试,保证源代码的可移植性。
2)支持AIX、FreeBSD、HP-UX、Linux、MacOS、NovellNetware、OpenBSD、OS/2Wrap、Solaris、Windows等多种操作系统。
3)为多种编程语言提供了API。
这些编程语言包括C、C++、Eiffel、Java、Perl、PHP、Python、Ruby和Tcl等。
4)支持多线程,充分利用CPU资源。
5)优化的SQL查询算法,有效地提高查询速度。
6)既能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够作为一个库而嵌入到其他的软件中提供多语言支持,常见的编码如中文的GB2312、BIG5,日文的Shift_JIS等都可以用作数据表名和数据列名。
7)提供TCP/IP、ODBC和JDBC等多种数据库连接途径。
8)提供用于管理、检查、优化数据库操作的管理工具。
9)可以处理拥有上千万条记录的大型数据库。
第3章需求分析
3.1需求分析
由于本系统设计是针对中小型超市,因此在设计之初,要对超市的需求目的经行分析,中小型超市实现系统智能化,就是解决一件商品从进入本超市的仓库到销售完成之后整个过程的智能化。
一件商品在销售的过程中应该包括标准化信息入库、上架、销售、售后四方面的问题。
由于需要实现需求分析中的若干问题,所以我应该从商品销售的三个大环节中进行功能分析。
进货环节解决的主要问题就是,在进货之初,因对货物进行系统编号,以便在销售过程中实现统一管理。
通过某种商品它在本超市的显存货数量,销售综合能力的分析得出需进货的数量(此功能在现阶段由于本人知识水平所限,无法在此系统中实现)。
销售环节要做到根据商品编号,显示商品信息,包括商品名称、规格、单位、售价、折扣信息。
当然在销售过程中还要实现对预付款的找零计算,交易撤销等功能。
会员环节主要解决的问题就是通过给予会员一个编号,然后在以后的商品交易过程中,通过此编号,自动识别会员级别,以及该级别下的会员折扣价格。
3.2模块分析
由于需要实现系统需求分析中的若干功能,所以在设计该系统时,我决定建立四大模块来一一实现以上功能。
销售管理模块:
超市前台售货系统是提供给柜员实际操作的前台界面,在此界面下,必须包括货物的所有信息以及在销售过程中的若干操作。
仓库模块:
仓库管理中应该包含商品的入库、出库时间,商品编号,商品数量,进货价格以及客户的退货信息等。
用户管理模块:
用户管理中应该包含会员管理、管理员管理、普通柜员三级别操作权限。
信息查询模块:
信息查询中,可以完成查询商品存货数量,商品信息等功能。
3.3数据库分析
根据模块分析中的系统五大模块,在建立数据库时应该包含6张表来实现。
user:
用户信息表:
此表完成会员、管理员、柜员区分。
各人员名称、卡号、密码、权限等设置。
marchandise:
商品信息表:
此表中应包含商品编号、类别、条形码、进货价等。
payinfo:
付款信息表:
此表中应该包括货币种类、付款方式、付款金额。
日期等。
b_stock:
进出库信息表:
此表中应包含商品的仓库编号、进货时间、进货价格、进货数量等。
e_stock:
进退货信息表:
此表中应该有进出库ID号、存货数量、下单数量、进货价格、出仓日期等。
sale:
销售信息表:
此表中应该有销售I