JAVA超市库存管理系统2

上传人:仙*** 文档编号:30616755 上传时间:2021-10-11 格式:DOC 页数:31 大小:237.50KB
返回 下载 相关 举报
JAVA超市库存管理系统2_第1页
第1页 / 共31页
JAVA超市库存管理系统2_第2页
第2页 / 共31页
JAVA超市库存管理系统2_第3页
第3页 / 共31页
点击查看更多>>
资源描述
毕 业 设 计设计题目:超市库存管理系统 系 别:_ 班 级:_姓 名:_指 导 教 师:_年月日超市库存管理系统摘 要随着小超市规模的发展不断扩大,商品数量急剧增加,有关商品的各种信息量也成倍增长。超市时时刻刻都需要对商品各种信息进行统计分析。而大型的超市管理系统功能过于强大而造成操作繁琐降低了小超市的工作效率。超市管理系统是市场上最流行的超市上常用的系统之一,它主要包含以下几个模块:系统登陆、商品入库、商品查询、商品更改和删除等。从而,实现对进货、销售及员工信息等实现全面、动态、及时的管理。本文系统的分析了软件开发的背景以过程;首先介绍了软件的开发环境,其次介绍了本软件的详细设计过程:数据库的设计、各个模块的设计和实现,以及具体界面的设计和功能关键词: Java, Access数据库, 界面 ,需求分析。 The Supermarket inventory management systemAbstractExpands unceasingly along with the small supermarket scale development, the commodity quantity sharp growth, related commodity each kind of information content also becomes time of growth. The supermarket in needs to carry on the statistical analysis all the time to commodity each kind of information. But the large-scale supermarket management system management system function too was formidable creates the operation tediously to reduce the small supermarket working efficiency.The supermarket management system management system is in the market on the most popular supermarket one of commonly used systems, it mainly contains following several modules: System jurisdiction hypothesis, primary data input, data compiling and inquiry and so on. Thus, realizes to the inventory, the sale and the staff information and so on realizes comprehensively, dynamic, the prompt management.This article system analysis software has developed background by process; first introduced the software development environment, next introduced this software detailed design process: Database design, each module design and realization, as well as concrete contact surface design and function.Key words: Java, Access database, interface, needs analysis目 录1引言12系统设计12.1系统开发平台12.2系统运行环境13问题定义14系统开发的理论基础24.1 JAVA 语言24.2数据库概论及ACCESS2000简介44.2.1数据库概论44.2.2 Access数据库简介54.3 使用JDBC-ODBC与数据库建立连接64.3.1 JDBC对象的数据库操作64.3.2 ODBC对象的数据库操作75系统可行性分析85.1技术可行性85.2经济可行性85.3开发环境可行性95.4社会因素考虑96系统需求分析97系统总体设计117.1功能模块设计117.2数据库设计127.3系统流程图127.4工作进度安排128系统详细设计128.1功能模块详细设计及算法128.2本人所作贡献139设计的编码与实现1410程序和系统调试1411结论15谢辞16附录18外文资料251引言超市进销存管理系统用计算机管理超市库存进出管理的一种计算机应用技术的创新,在计算机还未普及之前库存管理都是由工作人员手工书写的方式来操作的.现在一般的超市都采用计算机智能化管理,采用计算机作为工具的实用的计算机超市库存管理程序来帮助管理员进行更有效的超市库存管理工作。超市进销存管理系统是典型的信息管理系统(MIS),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于前者要求建立起数据一致性和完整性强、数据安全性好的库。而对于后者则要求应用程序功能完备,易使用等特点。作为国内市场的一些中小型超市,它们在信息化过程中的步伐要落后于大中型超市,而对于这些企业的资源管理,信息的存储和处理也显得迫切需要,要适应市场竞争,就需要有高效的处理方式和管理方法,因此加快超市的信息化进程是必可少的。 超市库存管理系统依靠现代化的计算机信息处理技术来管理超市,从而节省了大量的人力、物力,改善了员工的工作条件,减轻了劳动强度,并且能够快速反映出商品的进、销、存等状况和各种反馈信息分析,使管理人员快速对市场的变化做出相应的决策,加快超市经营管理效率。2系统设计2.1系统开发平台通过研究超市库存管理系统任务书,并对该系统进行实际需求分析,该系统采用了面向对象的JAVA软件作为开发工具,其功能强大、安全、跨平台、简单、适用于网络。该系统数据库采用了我们较为熟悉的Access2000数据库作为该系统的后台数据库支持。 2.2系统运行环境Windows系统具有完全可视化窗体,直观、高效的面向对象的图形用户界面,具有普遍的使用人群,所以我们决定该超市库存管理系统将运行在WINDOWS操作系统下。在 WINDOWS95/98/2000/XP下等都可以运行。3问题定义3.1开发项目:超市库存管理系统3.2开发背景:在我国超市形成在20世纪90年代初期,现在已经成为我国零售业的一种重要形态,为国民经济的发展发挥了重要的作用。随着超市高速的发展,其经营管理也变得愈加复杂,早期的售货员站柜台的形式早已不能满足现有销售也的发展,这样就迫切地需要引入新的管理技术。超市形态具有种种优点,但在目前状况下,它仍存在零售业企业所共有的落后的一面,如:不能有效地管理每种商品,收款结算速度慢,容易出现营业差错,不宜进行商品调价,盘点效率低等,而且在超市日常管理中,商品的进、销、存等决策以经验为主,缺乏实时分析功能,管理人员对及时传递资料的要求始终得不到满足。苏辙超市形态的高速发展,其经营管理也变得愈加复杂,日常所需要处理的数据量也逐渐增大,商业运转的中间环节也越来越多,原始的人工管理已无法应对这复杂的市场,使用软件控制成为必须。3.3项目目标:建立一个效率高,无差错,通用性好又节时的超市库存管理系统。3.4项目范围:利用一台普通配置的微机即可。3.5初步设想:利用所学计算机知识,采用JCreator + JDK 1.6作为开发工具,Access2000数据库作为该系统的后台数据库支持创建超市库存管理系统。3.6可行性研究:建议进行一周。4系统开发的理论基础4.1 JAVA 语言Java语言是一个支持网络计算的面向对象程序设计语言。Java语言吸收了Smalltalk语言和C+语言的优点,并增加了其它特性,如支持并发程序设计、网络通信、和多媒体数据控制等。主要特性如下:1、Java语言是简单的。Java语言的语法与C语言和C+语言很接近,使得大多数程序员很容易学习和使用Java。另一方面,Java丢弃了C+ 中很少使用的、很难理解的、令人迷惑的那些特性,如操作符重载、多继承、自动的强制类型转换。特别地,Java语言不使用指针,并提供了自动的废料收集,使得程序员不必为内存管理而担忧。2、Java语言是一个面向对象的。Java语言提供类、接口和继承等原语,为了简单起见,只支持类之间的单继承,但支持接口之间的多继承,并支持类与接口之间的实现机制(关键字为implements)。Java语言全面支持动态绑定,而C+ 语言只对虚函数使用动态绑定。总之,Java语言是一个纯的面向对象程序设计语言。3、Java语言是分布式的。Java语言支持Internet应用的开发,在基本的Java应用编程接口中有一个网络应用编程接口(),它提供了用于网络应用编程的类库,包括URL、URLConnection、Socket、 ServerSocket等。Java的RMI(远程方法激活)机制也是开发分布式应用的重要手段。4、Java语言是健壮的。Java的强类型机制、异常处理、废料的自动收集等是Java程序健壮性的重要保证。对指针的丢弃是Java的明智选择。Java的安全检查机制使得Java更具健壮性。5、Java语言是安全的。Java通常被用在网络环境中,为此,Java提供了一个安全机制以防恶意代码的攻击。除了Java语言具有的许多安全特性以外,Java对通过网络下载的类具有一个安全防范机制(类ClassLoader),如分配不同的名字空间以防替代本地的同名类、字节代码检查,并提供安全管理机制(类SecurityManager)让Java应用设置安全哨兵。 6、Java语言是体系结构中立的。Java程序(后缀为java的文件)在Java平台上被编译为体系结构中立的字节码格式(后缀为class的文件), 然后可以在实现这个Java平台的任何系统中运行。这种途径适合于异构的网络环境和软件的分发。 7、Java语言是可移植的。这种可移植性来源于体系结构中立性,另外,Java还严格规定了各个基本数据类型的长度。Java系统本身也具有很强的可移植性,Java编译器是用Java实现的,Java的运行环境是用ANSI C实现的。8、Java语言是解释型的。如前所述,Java程序在Java平台上被编译为字节码格式, 然后可以在实现这个Java平台的任何系统中运行。在运行时,Java平台中的Java解释器对这些字节码进行解释执行,执行过程中需要的类在联接阶段被载入到运行环境中。9、Java是高性能的。与那些解释型的高级脚本语言相比,Java的确是高性能的。事实上,Java的运行速度随着JIT(Just-In-Time)编译器技术的发展越来越接近于C+。 10、Java语言是多线程的。在Java语言中,线程是一种特殊的对象,它必须由Thread类或其子(孙)类来创建。通常有两种方法来创建线程:其一,使用型构为Thread(Runnable) 的构造子将一个实现了Runnable接口的对象包装成一个线程,其二,从Thread类派生出子类并重写run方法,使用该子类创建的对象即为线程。值得注意的是Thread类已经实现了Runnable接口,因此,任何一个线程均有它的run方法,而run方法中包含了线程所要运行的代码。线程的活动由一组方法来控制。 Java语言支持多个线程的同时执行,并提供多线程之间的同步机制(关键字为synchronized)。11、Java语言是动态的。Java语言的设计目标之一是适应于动态变化的环境。Java程序需要的类能动态地被载入到运行环境,也可以通过网络来载入所需要的类。这也有利于软件的升级。另外,Java中的类有一个运行时刻的表示,能进行运行时刻的类型检查。Java语言的优良特性使得Java应用具有无比的健壮性和可靠性,这也减少了应用系统的维护费用。Java对对象技术的全面支持和Java平台内嵌的API能缩短应用系统的开发时间并降低成本。Java的编译一次,到处可运行的特性使得它能够提供一个随处可用的开放结构和在多平台之间传递信息的低成本方式。特别是Java企业应用编程接口(Java Enterprise APIs)为企业计算及电子商务应用系统提供了有关技术和丰富的类库。4.2数据库概论及ACCESS2000简介4.2.1数据库概论数据库技术所研究的问题就是如何科学地组织和存储数据,如何高效地获取和处理数据。数据库技术作为数据管理的主要技术目前已广泛应用于各个领域,数据库系统已成为计算机系统的重要组成部分。 1、数据库技术数据库技术主要研究如何存储、使用和管理数据,它是计算机数据管理技术发展的新阶段。近年来,数据库技术和计算机网络技术的发展相互渗透、相互促进,已成为当今计算机领域发展迅速、应用广泛的两大领域。数据库技术不仅应用于事务处理,并且进一步应用到情报检索、人工智能、专家系统、计算机辅助设计等领域。 2、数据 数据是指存储在某一种媒体上能够识别的物理符号。数据的概念包括两个方面:其一是描述事物特性的数据内容;其二是存储在某一种媒体上的数据形式。3、数据处理数据处理是指对各种形式的数据进行收集、存储、加工和传播的一系列活动的总和。其目的之一是从大量的、原始的数据中抽取、推导出对人们有价值的信息以作为行动和决策的依据;目的之二是为了借助计算机科学地保存和管理复杂的、大量的数据,以便人们能够方便而充分地利用这些宝贵的信息资源。 4、数据库数据库是与特定的主题或目的相关的数据的集合。数据库可以直观地理解为存放数据的仓库,只不过这个仓库是在计算机的大容量存储器上(例如,硬盘就是一种最常见的计算机大容量存储设备)。而且数据必须按照一定的格式存放,因为它不仅需要存放,而且还要便于查找。5、数据库管理系统数据库管理系统(DataBase Management System,简称DBMS)是对数据库进行管理的系统软件,它的职能是有效地组织和存储数据、获取和管理数据,接受和完成用户提出的访问数据的各种请求。数据库管理系统主要功能包括以下几个方面:(1)数据定义功能DBMS提供了数据定义语言DDL(Data Definition Language),用户通过它可以方便地对数据库中的相关内容进行定义。例如,对数据库、表、索引进行定义。 (2)数据操纵功能DBMS提供了数据操纵语言DML(Data Manipulation Language),用户通过它可以实现对数据库的基本操作。例如,对表中数据的查询、插入、删除和修改。 (3)数据库运行控制功能这是DBMS的核心部分,它包括并发控制(即处理多个用户同时使用某些数据时可能产生的问题)、安全性检查、完整性约束条件的检查和执行、数据库的内部维护(例如,索引的自动维护)等。所有数据库的操作都要在这些控制程序的统一管理下进行,以保证数据的安全性、完整性以及多个用户对数据库的并发使用。(4)数据库的建立和维护功能数据库的建立和维护功能包括数据库初始数据的输入、转换功能,数据库的转储、恢复功能,数据库的重新组织功能和性能监视、分析功能等。这些功能通常是由一些实用程序完成的。它是数据库管理系统的一个重要组成部分。 4.2.2 Access数据库简介Access 是微软公司推出的基于Windows的桌面关系数据库管理系统(RDBMS),是Office系列应用软件之一。它提供了表、查询、窗体、报表、页、宏、模块7种用来建立数据库系统的对象;提供了多种向导、生成器、模板,把数据存储、数据查询、界面设计、报表生成等操作规范化;为建立功能完善的数据库管理系统提供了方便,也使得普通用户不必编写代码,就可以完成大部分数据管理的任务。 Access是一种关系型数据库管理系统,其主要特点如下: (1)存储方式单一 Access管理的对象有表、查询、窗体、报表、页、宏和模块,以上对象都存放在后缀为(.mdb)的数据库文件种,便于用户的操作和管理。 (2)面向对象 Access是一个面向对象的开发工具,利用面向对象的方式将数据库系统中的各种功能对象化,将数据库管理的各种功能封装在各类对象中。它将一个应用系统当作是由一系列对象组成的,对每个对象它都定义一组方法和属性,以定义该对象的行为和外国,用户还可以按需要给对象扩展方法和属性。通过对象的方法、属性完成数据库的操作和管理,极大地简化了用户的开发工作。同时,这种基于面向对象的开发方式,使得开发应用程序更为简便。 (3)界面友好、易操作 Access是一个可视化工具,是风格与Windows完全一样,用户想要生成对象并应用,只要使用鼠标进行拖放即可,非常直观方便。系统还提供了表生成器、查询生成器、报表设计器以及数据库向导、表向导、查询向导、窗体向导、报表向导等工具,使得操作简便,容易使用和掌握。 (4)集成环境、处理多种数据信息 Access基于Windows操作系统下的集成开发环境,该环境集成了各种向导和生成器工具,极大地提高了开发人员的工作效率,使得建立数据库、创建表、设计用户界面、设计数据查询、报表打印等可以方便有序地进行。 (5)Access支持ODBC(开发数据库互连,Open Data Base Connectivity),利用Access强大的DDE(动态数据交换)和OLE(对象的联接和嵌入)特性,可以在一个数据表中嵌入位图、声音、Excel表格、Word文档,还可以建立动态的数据库报表和窗体等。Access还可以将程序应用于网络,并与网络上的动态数据相联接。利用数据库访问页对象生成HTML文件,轻松构建Internet/Intranet的应用。4.3 使用JDBC-ODBC与数据库建立连接4.3.1 JDBC对象的数据库操作JDBC 是个“低级”接口,也就是说,它用于直接调用 SQL 命令。在这方面它的功能极佳,并比其它的数据库连接 API 易于使用,但它同时也被设计为一种基础接口,在它之上可以建立高级接口和工具。高级接口是“对用户友好的”接口,它使用的是一种更易理解和更为方便的 API,这种 API 在幕后被转换为诸如 JDBC 这样的低级接口。在编写本文时,正在开发两种基于 JDBC 的高级 API:一种用于 Java 的嵌入式 SQL。至少已经有一个提供者计划编写它。DBMS 实现SQL:一种专门设计来与数据库联合使用的语言。JDBC 要求 SQL 语句必须作为 String 传给 Java 方法。相反,嵌入式 SQL预处理器允许程序员将 SQL 语句直接与Java 混在一起使用。例如,可在 SQL 语句中使用 Java 变量,用以接受或提供SQL 值。然后,嵌入式 SQL 预处理器将通过 JDBC 调用把这种 Java/SQL 的混合物转换为Java。关系数据库表到 Java 类的直接映射。JavaSoft 和其它提供者都声称要实现该API。在这种“对象/关系”映射中,表中的每行对应于类的一个实例,而每列的值对应于该实例的一个属性。于是,程序员可直接对 Java 对象进行操作;存取数据所需的 SQL 调用将在“掩盖下”自动生成。此外还可提供更复杂的映射,例如将多个表中的行结合进一个 Java 类中。随着人们对 JDBC 的兴趣日益增涨,越来越多的开发人员一直在使用基于 JDBC 的工具,以使程序的编写更加容易。程序员也一直在编写力图使最终用户对数据库的访问变得更为简单的应用程序。JDBC由一系列连接数据库、执行SQL语句和操作结果的类和接口构成,其主要作用概括起来有如下三个方面: (1) 建立与数据库的连接。(2) 向数据库发起查询请求。(3) 处理数据库返回结果。JDBC主要包括以下类或接口:DriverMananger类: DriverMananger类是Java.sql包中用于数据库驱动程序管理的类,作用于用户和驱动程序之间。Connection接口:Connection是用来表示数据库连接的对象,对数据库的一切操作都是在这个连接的基础上进行的。Statement接口:Statement用于在已经建立的连接的基础上向数据库发送SQL语句的对象。它只是一个接口的定义,其中包括了执行SQL语句和获取返回结果的方法。PreparedStatement接口:PreparedStatement接口继承了Statement接口,但PreparedStatement语句中包含了经过预编译的SQL语句,因此可以获得更高的执行效率。在PreparedStatement语句中可以包含多个用“?”代表的字段,在程序中可以利用setXXX方法设置该字段的内容,从而增强了程序设计的动态性。 ResultSet接口:结果集(ResultSet)用来暂时存放数据库查询操作获得的结果。它包含了符合SQL语句中条件的所有行,并且它提供了一套get方法对这些行中的数据库进行访问。4.3.2 ODBC对象的数据库操作ODBC(OpenDatabaseConnectivity)是开放数据库互连的简称,是一种使用SQL的应用程序接口(API),是微软公司开放服务结构(WOSA,WindowsOpenServicesArchitecture)中有关数据库的一个组成部分,它建立了一组规范,并提供了一组对数据库访问的标准API(应用程序编程接口)。这些API利用SQL来完成其大部分任务。ODBC本身也提供了对SQL语言的支持,用户可以直接将SQL语句送给ODBC。一个完整的ODBC由下列几个部件组成: 1、应用程序(Application)。 2、ODBC管理器(Administrator)。该程序位于Windows 95控制面板(Control Panel)的32位ODBC内,其主要任务是管理安装的ODBC驱动程序和管理数据源。 3、驱动程序管理器(Driver Manager)。驱动程序管理器包含在ODBC32.DLL中,对用户是透明的。其任务是管理ODBC驱动程序,是ODBC中最重要的部件。 4、ODBC API。 5、ODBC 驱动程序。是一些DLL,提供了ODBC和数据库之间的接口。 6、数据源。数据源包含了数据库位置和数据库类型等信息,实际上是一种数据连接的抽象5系统可行性分析5.1技术可行性计算机行业的工作人员要求会使用常用的办公软件和管理软件,了解IT行业的产品。在现代化社会,无论是管理层面还是工作层面的人员都要有一定的计算机基础,同时工作人员要有较高的素质。超市对员工的素质要求则更高,要有敏捷的思维,接触事物的能力,能够在短期内掌握超市管理系统的功能和使用方法,这样才能熟练运用超市管理系统,更快的投入工作岗位。超市库存管理系统属于一个数据库应用类的系统,对存在数据库进行添加、删除、查找、删除等功能。从应用层面来讲,还是很容易掌握。在软件开发方面,由于编程语言较多,而Java语言是一种面向对象的编程工具,Java语言是一种代码简单,易懂和维护的编程语言,为开发超市库存管理系统提供技术支持。5.2经济可行性 随着技术的不断发展,超市管理系统不仅提高了销售效率,而且节省了劳动资源和开支,提高了超市的经济效益,为系统的广泛使用提供了基础。同时在经济上完全是可行的。 (1)系统给企业带来的经济效益超市库存管理系统是一个易于掌握和使用的系统,由于其操作简单,不仅超市企业节省了大量的劳动力,而且节省开支。其次超市库存管理系统快速和方便的管理,为超市节省时间,同时让公司的秩序有显著的改善。再次超市管理系统是一个智能化的管理,是一个动态的存储,也易于查询,为管理人员采取决策提供了一种依据。由此为企业带来可观的经济效益。 (2) 企业的承受能力超市库存管理系统的开发要进行系统调查和统计,主要是进行人力和物力的投资,然而对软件的投资只是一个简短的过程,只要有专业的开发人员投入开发。软件要求员工有一定的素质和适应能力。软件方便企业人员的安排和调度,总体来说节省了开支,在繁琐的事情和和管理有序的企业来说,企业考虑的长远利益,而不眼前的琐事。从而商家是有能力支付开发费用。5.3开发环境可行性JAVA是一种面向对象的编程工具,易于程序的开发和调试维护。JAVA不仅基于不同的平台开发,而且可以在不同的系统上进行移植,从而加快了软件的开发,促进了发展。超市库存管理系统就是基于这种简单的语言,以ACCESS 2003作为数据库的后台,通过JDBC-ODBC空间来访问数据库,使软件的开发更为简单,同时也提高了开发的速度。5.4社会因素考虑由于其它语言开发的超市管理方面的软件移植性较差,而基于JAVA语言的开发的软件可以基于不同平台,移植性和使用广泛,为用户提供可视化的操作界面,易于操作和使用。本系统基于Windows的图形用户界面,即使不懂电脑知识的人也很容易上手。超市管理系统采用最友好的交互界面,不需要专业的开发人员进行操作,同时维护易于简单,操作人员不需要了解太多的数据库方面的知识,只要进行简单的操作就行。经过上述分析,无论从那个方面来讲,基于JAVA语言的超市管理系统都有很高的开发价值。 6系统需求分析超市库存管理系统是基于JCreator + JDK 1.6作为开发工具, ACCESS2000作为后台数据库支持。超市库存管理系统开发主要是界面程序的开发、数据库的建立、数据库的维护。应用程序功能完善,界面人机交互要好,而且操作简单。数据库中的数据要条理清晰,易于维护,同时要保证数据库中的数据完整。选择JAVA语言,因为JAVA基于不同的开发平台,并且界面的开发是基于Windows的开发界面,更好的实现了人机交互。同时JAVA语言简单,在较短的时间内能够开发出使用性强、功能完善,易于操作的程序,也能实现与数据库的连接。该系统需要满足以下几方面的需求: 超市库存管理系统能够节省劳动力,可以快速的货物的入库、出库进行管理,介绍了企业的开支,给超市增加收入,提高了超市对货物管理的效率,同时也是一个时代发展的标志,使超市的管理工作更为轻松。对于管理系统而言,在繁琐的事情中减少了问题出现的机率,数据库的管理也更为简单,使数据库更为安全 超市管理系统基于不同的平台开发,而且移植性好,从而应用程序可以在不同的平台上运行。为了适应社会的发展和超市管理的需要,可以在原有功能之上进行对系统功能的补充和调整,从而进一步完善其需要。通过以上的需求分析,初步确定该系统功能主要包括以下几个模块:1. 系统登录2. 商品入库3. 商品查询4. 商品更改、删除该系统功能模块结构层次还不够清晰,还需进一步细化和完善,在系统的总体设计及详细设计阶段将做进一步的改进和完善。输入错误重新登录系统登录系统数据流图:确定登录商品更改删除商品查询商品入库商品数据库系统数据流图数据字典:数据流的描述:商品信息=BH+MC+SL+DW+CD+RQ+BZ+JJ+BZ商品信息查询= BH+MC+DW查询结果= BH+MC+SL+DW+CD+RQ+BZ+JJ+BZ数据项的描述:数据项名数据类型长度说明BH文本50商品编号MC文本50商品名称SL数字长整型商品数量DW文本50商品单位CD文本50商品产地RQ文本50生产日期BZQ数字双精度型保质期JJ数字长整型商品进价BZ文本50备注数据存储的描述: 商品数据库:存储由入库商品信息按商品编号的首字母进行分类存储得到结果数据。7系统总体设计7.1功能模块设计根据前面的设计思想和需求分析该系统从功能上分为以下几个模块:1. 系统登录2. 商品输入3. 商品查询4. 商品更改5. 商品删除系统登录录超市库存管理系统商品入库商品查询商品更改商品删除进行身份验证然后按类存储存在则给出全部信息然后按类存储不存在则输入全部信息信息按类列出库存全部商品或其他信息的修改商品售出则修改数量删除商品数量为零则进行系统功能框架图:系统功能框架图7.2数据库设计为便于管理访问,将数据存储在商品数据库中:商品数据库包括:存储由商品入库时按编号首字母的规定进行分类存储得到的结果数据。根据得到的数据进行更改和删除。系统登录7.3系统流程图分组处理商品数据库商品录入商品查询数据修改查询结果商品名称对照表7.4工作进度安排第11周:深入研究任务书,搜集、查阅相关的资料, 撰写开题报告第12周:确定设计方案第13周:详细设计并进行编码与局部调试第14周:系统整合与整体调试第15周:准备毕业设计答辩材料,毕业设计答辩8系统详细设计8.1功能模块详细设计及算法通过深入研究任务书,搜集、查阅与课题相关的资料,在总体设计阶段该系统预设计系统登录、商品入库、商品查询、商品更改、删除等几个功能模块。每个模块又包含多项子功能:1、 统登录模块需要包含完成根据提供的用户名、初始密码进行登录验证,如果成功则进入系统,否则提示无法登录。2、商品入库模块需要包含完成根据商品编号的首字母来进行商品的分类,如果输入的商品在数据库中存在,则给出已有的信息,可以修改数量;如果输入的商品不存在,则需要输入全部信息。3、商品查询模块需要包含完成商品查询,分类列出数据库里全部的商品信息。4、分组模块需包括对报名信息按项目进行分库、分组等功能项。5、商品更改、删除模块要包括完成商品更改,当商品售出对数量进行修改,或对其他信息进行修改,商品删除,商品数量为0则进行删除。8.2本人所作贡献在本次设计中,我主要负责系统登录模块。我要设计与实现的主要内容有:1、商品的更改和删除界面设计:商品更改界面 商品删除界面2、连接Access数据库 数据库有家电和食品两个表,A代表食品表,B代表家电表 连接数据库代码: Class.forName(sun.jdbc.odbc.JdbcOdbcDriver);Connection con=DriverManager.getConnection(jdbc:odbc:cangku); Statement st=con.createStatement();3、对功能介绍 更改功能:要求用户输入商品的编号,根据商品编号去数据库查询出商品的信息,如果存在此商品则可以进行对商品的更改,如果不存在此商品则不显示信息。 假如查询食品表,代码如下: up=update 食品 set 商品名称=+jtf1.getText()+,商品数量=+jtf2.getText()+,商品单位=+jtf3.getText()+,商品产地=+jtf4.getText()+,生产日期=+jtf5.getText()+,保质期=+jtf6.getText()+,商品进价=+jtf7.getText()+,备注=+jtf8.getText()+ where 商品编号=+jtf0.getText()+; 删除功能:要求用户输入商品编号,根据商品编号去数据库中商品信息,如果存在此商品,便可查询出商品的名称。 假如删除家电的信息,代码如下 up=Delete from 家电 where 商品编号=+jtf0.getText()+; 关闭数据库代码: st.close(); con.close();4、对控制中心所属各功能模块进行整合。5、组织完成整个系统的调试和试运行。9设计的编码与实现编码是设计软件时必不可少的,同时也是能够让人机交互的基础,编码也是也是影响一个软件质量、速度、通信的一个关键。一种程序设计语言也是影响软件质量因素之一。Java是编程较为简单,许多方法和类都不需要程序员亲自编写,只需继承响应的类。Java是一种基于Windows的开发平台,同时为人机更好的交互提供了基础。为了让开发者更好的完善,程序编写时做了相应的注释,难懂的语句有响应的解释,方法是按一般的规律命名。10程序和系统调试 软件的完成要经过编译和调试两个过程,模块的编写和测试都是设计者,当开发过程中,并不能保证每一处都完全正确,要不断的调试,在调试中尽可能查找出更多的错误,根据错误提示信息进行相应的修改,由于本人所做的只有商品的更改和删除,模块单一。在运行中发现模块的不足之处,进行响应的完善。所以一个软件的完成是需要不断的调试和完善,调试是保证软件顺利运行的基础。11结论时光匆匆飞逝,三年的努力与付出,随着论文的完成,终于让我在大学的生活得以划下完美的句点。通过此次的论文,我学到了很多知识,跨越了传统方式下的教与学的体制束缚,在论文的写作过程中,通过查资料和搜集有关的文献,培养了自学能力和动手能力。并且由原先的被动的接受知识转换为主动的寻求知识,这可以说是学习方法上的一个很大的突破。在以往的传统的学习模式下,我们可能会记住很多的书本知识,但是通过毕业论文,我们学会了如何将学到的知识转化为自己的东西,学会了怎么更好的处理知识和实践相结合的问题。通过这次超市库存管理系统课程设计,让我充分运用自己所学的知识,让我明白只有单纯的理论知识是远远不够的,只有通过实际的锻炼才能更好的运用所掌握的基础知识,才能在原有的基础上提升自己的能力,提高自己解决问题的能力。在这短短的一个月内,查阅有关的java学习资料,设计规则,代码的编写及到最后的调试。在设计过程中,通过对控件事件的处理,界面的布局,代码的调试,充分锻炼了自己的思维,获得了充分的实际经验,提高了处理问题的能力,同时也提高了对问题思考的应急能力和抗压力的能力。在老师的指导下,使我有了思考的方向,他的循循善诱的教导和不拘一格的思路给予我无尽的启迪,他的严谨细致、一丝不苟的作风,将一直是我工作、学习中的榜样。加上老师本来就有的教学任务,工作量之大可想而知,但在一次次的回稿中,精确到每一个字的批改给了我深刻的印象,使我在论文之外明白了做学问所应有的态度。通过此次的论文,我学到了很多知识,跨越了传统方式下的教与学的体制束缚,在论文的写作过程中,通过查资料和搜集有关的文献,培养了自学能力和动手能力。并且由原先的被动的接受知识转换为主动的寻求知识,这可以说是学习方法上的一个很大的突破。在以往的传统的学习模式下,我们可能会记住很多的书本知识,但是通过毕业论文,我们学会了如何将学到的知识转化为自己的东西,学会了怎么更好的处理知识和实践相结合的问题。经过一个月的努力,虽然设计已经完成,但仍然有很多模块和功能要完善,存在很多美中不足之处。但是基本上还能满足小型超市的管理。在论文的写作过程中也学到了做任何事情所要有的态度和心态,首先我明白了做学问要一丝不苟,对于出现的任何问题和偏差都不要轻视,要通过正确的途径去解决,在做事情的过程中要有耐心和毅力,不要一遇到困难就打退堂鼓,只要坚持下去就可以找到思路去解决问题的。总之,此次论文的写作过程,让我明白做什么事都要不断的尝试,再次期间,我收获了很多。此次论文的完成既为大学三年划上了一个完美的句号,这也是我以后工作的一个前奏,也为将来的人生之路做好了一个很好的铺垫。谢辞短短的一个月的时间,完成了本篇论文,对自己来说是一个不小的挑战。本次论文的顺利完成,得到了辅导老师的大力辅导与帮助。在此,表示我最衷心的感谢。郭沫若曾说:写一篇好的文章有七个字的诀窍。就是改、改、改、改、改、改、改。从最初翻阅蓝海战略拟订自己论文核心到现在,仅仅论文的题目就六、七次易名。论文可以说有了脱胎换骨的变化。如果没有陈老师不厌其烦,一次一次从百忙中抽空帮我指导和修改论文,也许论文现在还是一个雏形,没有实质的进展。同时也要感谢三年来教导过自己的各学科老师,学院的各位领导和老师,还有在我论文过程中,帮我一起搜集资料的朋友和同学。正因为有你们,才使得这篇论文能完整的呈现在这里,才使得自己完成了这个令人兴奋的目标。任何一篇优秀的论文都离不开老师很朋友的参与、支持和帮助。而每一篇好的论文又都能为大家所分享和阅读,这真是一种善缘,愿我们在这样的关系中都能成长和进步。在最后,对指导和帮助过我的老师、同学们再一次表示我的衷心地感谢!参考文献1. Java语言基础教程, 朱福喜 主编 ,清华大学出版社2. 数据结构与算法分析(Java语言描述)(第2版) , 金名 主编, 清华大学出版社3. Java2程序设计基础, 张晓龙 主编, 清华大学出版社4. Java程序设计教程(第2版), 雍俊海 主编, 清华大学出版社5. Java2实验指导与测试第二版,龚沛曾编写,高等教育出版社 6. Java 程序设计教程,刘瑞新、李树东等编著,电子工业出版社 7. Access 2003应用技术, 马秋菊 等编著,水利水电出版社8. Access数据库技术实训教程, 张玲 编著 ,清华大学出版社 9. Java 系统开发实例精粹,曹衍龙 编著,人民邮电出版社10. Java数据库系统项目开发实践 ,谭浩强 主编,清华大学出版社11. Java信息系统开发实例精选,赛奎春 主编,机械工业出版社12. Java2高级开发指南,美Evangelos Petroutsos kevinltough著,电子工业出版社13. Java程序设计案例教程,刘志成 主编,清华大学出版社附录更改代码:导入JAVA类包/* import java.awt.*;import javax.swing.*;import java.awt.event.*;import javax.swing.event.*;import java.sql.*;import java.applet.*;import java.util.*;*/public class Genggai extends JFrame implements ActionListener,FocusListener JLabel jl=new JLabel9;JTextField jtf=new JTextField9;Toolkit tk=Toolkit.getDefaultToolkit();Dimension dm;Font font=new Font(宋体,Font.PLAIN+Font.BOLD,20);int y=-50;JButton jb1,jb2;static boolean f=true,A_B=true; public Genggai() JPanel jp=new JPanel(null); jl0=new JLabel(商品编号); jl1=new JLabel(商品名称); jl2=new JLabel(商品数量); jl3=new JLabel(商品单位); jl4=new JLabel(商品产地); jl5=new JLabel(生产日期); jl6=new JLabel(保值期); jl7=new JLabel(商品进价); jl8=new JLabel(备注); for(int i=0;i9;i+) jli.setBounds(10,y+60,100,40); jli.setFont(font); jtfi=new JTextField(30); jtfi.setBounds(120,y+=60,100,40); jtfi.setFont(font); jp.add(jli); jp.add(jtfi); jtf0.addFocusListener(this);jb1=new JButton(确定);jb1.setBounds(30,560,80,40);jb1.setFont(font);jb1.addActionListener(this);jp.add(jb1);jb2=new JButton(清空);jb2.setBounds(120,560,80,40);jb2.addActionListener(this);jb2.setFont(font);jp.add(jb2);for(int i=1;i9;i+)jtfi.setEditable(false); this.setContentPane(jp); this.setTitle(商品更改); setSize(240,700); setVisible(true); setResizable(false); dm=tk.getScreenSize(); setLocation(dm.width/2-getWidth()/2,dm.height/2-getHeight()/2); setDefaultCloseOperation(DISPOSE_ON_CLOSE); public void focusGained(FocusEvent e) public void focusLost(FocusEvent e) try Class.forName(sun.jdbc.odbc.JdbcOdbcDriver); Connection con=DriverManager.getConnection(jdbc:odbc:cangku); Statement st=con.createStatement(); String ss=jtf0.getText(); String sql=; if(ss.charAt(0)=A) sql=select * from 食品; else if(ss.charAt(0)=B) sql=select * from 家电; A_B=false; System.out.println(sql); ResultSet rs=st.executeQuery(sql); while(rs.next() if(rs.getString(1).equals(jtf0.getText() for(int i=1;i9;i+)jtfi.setText(rs.getString(i+1); f=true; jtf0.setEditable(false); for(int i=1;i9;i+) jtfi.setEditable(true); break; else f=false; if(f=false) for(int i=1;i9;i+) jtfi.setText(); JOptionPane.showMessageDialog(null,需要更改的商品不存在!); rs.close(); st.close(); con.close(); catch(Exception eee) public void actionPerformed(ActionEvent e) String up=,sql=,sn=; if(A_B=true)
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!