小小便利店前台收银系统的设计与实现_第1页
小小便利店前台收银系统的设计与实现_第2页
小小便利店前台收银系统的设计与实现_第3页
小小便利店前台收银系统的设计与实现_第4页
小小便利店前台收银系统的设计与实现_第5页
已阅读5页,还剩36页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、摘摘要要 随着经济的发展,社会的进步,计算机越来越深入到我们日常的工作学习及生活 中,成为日常生活中不可缺少的辅助工具。面对当前便利店行业普遍存在的管理手段、 管理技术落后等问题,使用计算机管理在很大程度上可以帮助便利店克服这些困难。 小小便利店前台收银系统可以提高便利店的管理水平,节省大量人力、物力和财力, 使经营管理更加科学有序、经营物流清晰,经营状况详实、准确。作为计算机应用的 一部分,使用计算机对便利店信息进行管理,具有手工管理所无法比拟的优点。例如:检 索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点 能够极大地提高便利店管理的效率。 本系统主要包括前台应用

2、程序的开发以及后台数据库的建立和维护两个方面。对 于前者要求系统求应用程序功能完备,能够采用人机交互的方式,界面美观友好,对 于后者要求数据的一致性和完整性,保证数据的安全性,能够对系统内各类信息进行 高效准确的管理,最大限度地实现系统的易维护性和易操作性。本系统是在 Sql Server 2008 平台上使用 Java 语言作为前台开发工具。Sql Server 2008 作为后台数 据库平台,通过 Sql Server 2008 将系统所需的数据和用户操作的数据与前台连接起 来。 关键词:关键词:数据库人机交互Sql Server 2008Java 语言 Abstract With eco

3、nomic development, social progress, the computer more and more depth to our day-to-day work of learning and life, become indispensable tool in our daily life. Faced with the current prevalence of the supermarket sector management tools, management techniques and so on, a large extent, the use of com

4、puter management in the supermarket can help overcome these difficulties. Invoicing supermarket sales supermarket management system can improve the management level, save a lot of manpower, material and financial resources to make management more scientific and orderly operation of the logistics cle

5、ar, detailed operating conditions and accurate. As part of computer applications, the use of computers to store information management, have the manual management of unmatched advantages. For example: the rapid search to find convenient, high reliability and large storage capacity, the confidentiali

6、ty of a good, long life and low cost. These advantages can greatly improve the efficiency of the supermarket management. The system mainly includes the development of future applications as well as the background of the establishment and maintenance of the database two ways. For the former system fo

7、r applications that require full-featured, to adopt the way of human-computer interaction, interface beautiful and friendly, for the latter requires the establishment of data consistency and integrity to ensure data security, enable to manage all types of systems inner information efficiently and ac

8、curately, maximize to accomplish the systems easy to maintain and easy interoperability, The system choose in the visual studio 2005 platform using Java language as a tool for future development, Sql Server 2008 as the back-end database platform, Sql Server 2008 will be required through the system d

9、ata and user data and link up front. Keywords: databaseshuman-computerinteractionSql Server 2008 目目录录 1 1 前前言言.1 1.11.1 开发背景开发背景.1 1.21.2 国内外研究现状国内外研究现状.1 1.31.3 系统设计的目标系统设计的目标.1 1.41.4 课题研究的目的及意义课题研究的目的及意义.2 2 2 系统开发所采用的技术系统开发所采用的技术.3 2.12.1 J JAVAAVA语言语言.3 2.22.2 J JAVAAVA S SWINGWING技术技术.3 2.32.3

10、 SQLSQL S SERVERERVER 20082008 数据库数据库.3 2.42.4 M MY YE ECLIPSECLIPSE 8.58.5 介绍介绍.4 2.52.5 系统运行环境系统运行环境.4 2.62.6 数据库连接数据库连接.4 3 小小便利店前台收银系统需求分析小小便利店前台收银系统需求分析.6 3.13.1 功能分析功能分析.6 3.23.2 可行性研究可行性研究.6 3.2.1 技术可行性.6 3.2.2 经济可行性.6 3.2.3 操作可行性.7 3.33.3 系统业务流程图系统业务流程图.7 4 4 系统总体设计系统总体设计.9 4.14.1 系统工作流程系统工作

11、流程.9 4.24.2 系统功能结构图系统功能结构图.9 4.34.3 数据库概念结构设计数据库概念结构设计.10 4.44.4 数据库逻辑结构设计数据库逻辑结构设计.10 4.54.5 SQLSSQLSERVERERVER数据库连接数据库连接 .12 4.64.6 数据库维护数据库维护.13 5 5 系统详细设计系统详细设计.14 5.15.1 前台销售前台销售.14 5.25.2 后台管理后台管理.16 5.2.1 销售管理.18 5.2.2 库存查询.20 5.2.3 用户管理.20 5.2.4 信息查询.22 5.2.5 商品管理.23 6 6 系统测试与性能分析系统测试与性能分析.3

12、0 6.16.1 测试概论测试概论.30 6.26.2 小小便利店前台收银系统采用的测试方法小小便利店前台收银系统采用的测试方法.30 6.36.3 登录功能测试登录功能测试.30 结结论论.32 谢谢辞辞.33 参考文献参考文献.34 附附录录.35 1 1 前前言言 1.11.1 开发背景开发背景 随着我国经济的高速发展及信息化浪潮的日益临近,商场经营管理机制正在发生 着根本性的变化,商场要想在激烈的市场竞争环境下的求得生存,就必须有效地利用人 才、时间、信息结合的优势,就必须有效地进行商场内部改革和加强商场管理。借助 现代信息技术和管理理论,建立商场管理信息系统势在必行。 对于便利店而言

13、,如何降低成本,减少财力,从而获取最大的效益才是重中之重。 如何做到便利店与经济效益具有良好匹配?如何做到事得其才,人尽其用?如何在满 足便利店效益的同时又兼顾员工的需求?如何能在瞬息万变的时代使便利店与社会环 境相适应并且处理好随时变化的便利店?这一系列的问题都是需要亟待解决的问题。 为了解决上述问题,使商场在激励的市场竞争中立于不败之地,设计并开发出一 套适合商场便利店收银特点,又符合我国商场管理实情的便利店收银系统 (小小便利 店前台收银系统)就显得尤为重要。 本文正是从这方面出发,以便利店为背景,希望通过本系统的功能设计,能够把便 利店收银员从繁重、传统的事务性工作中解放出来,使得他们

14、更专注于最需要智慧和 经验的工作,因而提高便利店收银的质量和效率。 1.21.2 国内外研究现状国内外研究现状 随着现代科学技术的迅猛发展,计算机技术已经渗透到各个领域,成为各行业必 不可少的工具,特别是 Internet 技术的推广和信息高速公路的建立,使 IT 产业在市 场竞争中越发显示出其独特的优势,步入信息化时代,有巨大的数据信息等待处理和 传输,这使得对管理系统的进一步开发和利用显得尤为迫切。 作为国内市场的一些中小型便利店,它们在信息化过程中的步伐要落后于大中型 便利店,而对于这些企业的资源管理,信息的存储和处理也显得迫切需要,要适应市 场竞争,就需要有高效的处理方式和管理方法,因

15、此加快便利店的信息化进程是必可 少的。 实习期间,通过对市场的调查,针对现在各中小型便利店对经营业务和人事管理 的实际需要,开发了这套小小便利店前台收银系统。在开发过程中,我们针对当前各 便利店管理的特点和技术人员的实际水平,采用基于 Windows 图形用户界面这一易学 易用的操作环境,在系统设计过程中,我们尽量采用易懂易读的人机界面,使用户可 以在短期内完全掌握。我们又始终发系统的正确性放在首位,力求数据的完整和处理 的正确性。在此基础上优化程序代码,加速系统运行和减少对系统资源的占用。 1.31.3 系统设计的目标系统设计的目标 1.系统采用人机交互的方式,界面美观友好,信息查询灵活,方

16、便,数据存储安 全可靠。 2.能够对进货信息进行有效的管理。 3.对用户输入的数据,进行严格的数据检验,尽可能地避免人为错误。 4.能够对商品销售信息进行有效的管理。 5.能够准确,详细地管理商品库存信息。 6.系统应最大限度地实现易维护性和易操作性。 1.41.4 课题研究的目的及意义课题研究的目的及意义 中小型便利店在我国经济发展中具有重要地位,目前我国的中小型便利店数量多, 地区分布广泛,行业分布跨度大。随着全球经济一体化的发展和电子商务的兴起,中 小型便利店之间的竞争将越来越激烈。网络及电子商务的迅猛发展突破了时间,空间 的局限性,给中小型便利店带来了更多的发展机会,同时也增大了便利店

17、之间的竞争 强度。这就要求中小型便利店必须改变经营管理模式,提高运营效率。目前,我国中 小型便利店的信息化水平还很低。随着技术的发展,电脑操作及管理日趋简化,电脑 知识日趋普及,同时市场经济快速多变,竞争激烈,便利店采用电脑管理进货,库存, 销售商品等诸多环节也成为必然趋势。 2 2 系统开发系统开发所采用的技术所采用的技术 2.12.1 JavaJava 语言语言 Java 是一种可以跨平台应用软件的面向对象的程序设计语言,是由 Sun Microsystems 公司于 1995 年 5 月推出的 Java 程序设计语言和 Java 平台(即 J2SE,J2EE,J2ME)的总称。Java

18、技术具有卓越的通用性、高效性、平台移植性和安 全性,广泛应用于个人 PC、数据中心、游戏控制台、科学超级计算机、移动电话和互 联网,同时拥有全球最大的开发者专业群。在全球云计算机和移动互联网的产业环境 下,Java 更具备了显著优势和广阔前景。 Java 平台由 Java 虚拟机 JVM(Java Virtual Machine)和 Java 应用编程接口 (Application Programming Interface、简称 API)构成。Java 应用编程接口为 Java 应用提供了一个独立于操作系统的标准接口,可分为基本部分和扩展部分。在硬 件或操作系统平台上安装一个 Java 平台

19、之后,Java 应用程序就可运行。现在 Java 平 台已经嵌入了几乎所有的操作系统。这样 Java 程序可以只编译一次,就可以在各种系 统中运行。Java 应用编程接口已经从 1.1x 版发展到 1.2 版。目前常用的 Java 平台基 于 JDK 1.5,最近版本为 JDK 1.7。 2.22.2 JavaJava SwingSwing 技术技术 Swing 是一个用于开发 Java 应用程序用户界面的开发工具包。它以抽象窗口工具 包(AWT)为基础使跨平台应用程序可以使用任何可插拔的外观风格。 Swing 是由 100%纯 Java 实现的,Swing 组件是用 Java 实现的轻量级(

20、light- weight)组件,没有本地代码,不依赖操作系统的支持,这是它与 AWT 组件的最大区 别。由于 AWT 组件通过与具体平台相关的对等类(Peer)实现,因此 Swing 比 AWT 组 件具有更强的实用性。Swing 在不同的平台上表现一致,并且有能力提供本地窗口系统 不支持的其它特性。Swing 采用了一种 MVC 的设计思想,即模型-视图-控制器 (Model-View-Controller) ,其中模型用来保存内容,视图用来显示内容,控制器用 来控制用户输入。 2.32.3 SQLSQL ServerServer 20082008 数据库数据库 SQL Server 20

21、08 是一个重大的产品版本,它推出了许多新的特性和关键的改进, 使得它成为至今为止的最强大和最全面的 SQL Server 版本。SQL Server 2008 出现在 微软数据平台上是因为它使得公司可以运行他们关键任务的应用程序,同时降低了管 理数据基础设施和发送观察和信息给所有用户的成本。 这个平台有以下特点: 1.可信任的使得公司可以以很高的安全性、可靠性和可扩展性来运行他们关 键任务的应用程序。 2.高效的使得公司可以降低开发和管理他们的数据基础设施的时间和成本。 3.智能的提供了一个全面的平台,可以在你的用户需要的时候给他发送观察 和信息。 这个平台的优点: 1.保护您的信息。SQL

22、 Server 2008 利用全面审核功能、透明数据加密和外围应 用配置器(仅启用所需服务最大限度地减少安全攻击)来提高符合性和安全性。 2.确保业务连续性。SQL Server 2008 附带提供的数据库镜像可提高应用程序的 可靠性,简化发生存储失败后的恢复过程。 3.提供可预测响应。SQL Server 2008 提供更广泛的性能数据收集、新的中央数 据存储库(存储性能数据) ,以及改进的数据压缩(使您可以更有效地存储数据) 。 4.最大限度地减少管理监视。Declarative Management Framework (DMF) 是 SQL Server 2008 中一个基于策略的新型

23、管理框架,它通过为大多数数据库操作定义一组 通用策略来简化日常维护操作,降低总拥有成本。 5.集成任何数据。SQL Server 2008 提供改进的查询性能和高效且具成本效益的 数据存储,允许您管理和扩展数量庞大的用户和数据。 6.提供相关信息。SQL Server 2008 使用户可以在 Microsoft Office Word 和 Microsoft Office Excel 中创建复杂报表,并在内部和外部分享那些报表。 即时访 问相关信息使员工可以做出更好、更快和更多相关决策。 2.42.4 MyEclipseMyEclipse 8.58.5 介绍介绍 MyEclipse 企业级工作

24、平台(MyEclipse Enterprise Workbench ,简称 MyEclipse)是对 EclipseIDE 的扩展,利用它可以在数据库和 JavaEE 的开发、发布以 及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的 JavaEE 集成开发 环境,包括了完备的编码、调试、测试和发布功能,完整支持 HTML,Struts,JSP,CSS,JavaScript,SQL,Hibernate。 2.52.5 系统运行环境系统运行环境 操作系统:Windows XP 以上即可运行。 处理器:(1)32 位: 建议使用 1 千兆赫 (GHz) 或速度更快的处理器。 (2)64

25、位: 1-GHz AMD Opteron、AMD Athlon 64、具有 Intel EM64T 支持的 Intel Xeon、具有 EM64T 支持的 Intel Pentium IV 处理器或速度更快的处 理器。 内存:512 兆字节(MB)RAM 或更多;建议使用 1 吉字节 (GB) 硬盘:至少 90 MB 用于 Analysis Services;至少 120 MB 分别用于 Reporting Services 和 Integration Services;至少 280 MB 用于数据库引擎和数据文件、复 制以及全文搜索;至少 850 MB 用于客户端组件显示: SQL Serv

26、er 图形工具要求 VGA (1024x768) 或更高分辨率 2.62.6 数据库连接数据库连接 在 Java 语言中,JDBC(Java DataBase Connection)是应用程序与数据库沟通的 桥梁,即 Java 语言通过 JDBC 技术访问数据库。JDBC 是一种“开放”的方案,它为数据 库应用开发人员数据库前台工具开发人员提供了一种标准的应用程序设计接口,使 开发人员可以用纯 Java 语言编写完整的数据库应用程序。JDBC 提供两种 API,分别是 面向开发人员的 API 和面向底层的 JDBC 驱动程序 API,底层主要通过直接的 JDBC 驱动 和 JDBC-ODBC

27、桥驱动实现与数据库的连接。一般来说,Java 应用程序访问数据库的过 程(如图 2-1 所示)是: 1.装载数据库驱动程序; 2.通过 JDBC 建立数据库连接; 3.访问数据库,执行 SQL 语句; 4.断开数据库连接。 图 2-1 Java 数据库访问机制 JDBC 作为一种数据库访问技术,具有简单易用的优点。但使用这种模式进行桌面 应用程序开发,存在很多问题。首先,每一次桌面请求都要建立一次数据库连接。建 立连接是一个费时的活动,每次都得花费 0.05s1s 的时间,而且系统还要分配内存 资源。这个时间对于一次或几次数据库操作,或许感觉不出系统有多大的开销。可是 对于现在的桌面应用,尤其

28、是大型电子商务网站,同时有几百人甚至几千人在线是很 正常的事。在这种情况下,频繁的进行数据库连接操作势必占用很多的系统资源,网 站的响应速度必定下降,严重的甚至会造成服务器的崩溃。不是危言耸听,这就是制 约某些电子商务网站发展的技术瓶颈问题。其次,对于每一次数据库连接,使用完后 都得断开。否则,如果程序出现异常而未能关闭,将会导致数据库系统中的内存泄漏, 最终将不得不重启数据库。还有,这种开发不能控制被创建的连接对象数,系统资源 会被毫无顾及的分配出去,如连接过多,也可能导致内存泄漏,服务器崩溃。 3 小小便利店前台收银系统需求分析小小便利店前台收银系统需求分析 小小便利店前台收银系统需要提供

29、会员信息、商品信息、进/出货信息、销售信息、 库存信息的基础设计,同时提供强大的精确查找和模糊查找信息的功能,可以分不同 权限、不同用户对该系统进行操作。另外,该系统还必须保证数据的安全性、完整性 和准确性。 小小便利店前台收银系统的目标是实现便利店信息化管理,减少盲目进/出货物、 降低成本、合理控制库存、减少资金占用并提升超市综合竞争力。时间就是金钱,效 率就是生命。小小便利店前台收银系统能够为超市节省大量人力资源,减少管理费用, 从而间接为超市节约成本,提高超市效率。 3.13.1 功能分析功能分析 通过对用户需求进行反复的讨论与研究,最终确定该系统应该实现以下功能: 1.对商品信息的变动

30、进行处理 在商品的采购和销售过程中,商品信息总是在不断变化的,比如商品价格的调整、 商品信息的修改、新商品信息的增加以及旧商品信息的删除,因此设计系统时必须考 虑到这些情况。商品信息有商品编号、商品名、商品数量、商品规格、商品价格等属 性。 2.对用户信息的变动进行处理 需考虑到会员的增加和删除以及会员信息的修改等功能,因此也要充分考虑。 3.对进出货/物信息的变动进行处理 管理员在进/出货物的过程中采购信息也在不断发生改变,因此也要充分考虑。 4.对销售信息的变动进行处理 营业员在销售的过程中销售信息也在不断发生改变,因此也要充分考虑。 5.查询及统计功能 要求可以根据指定的条件对顾客信息、

31、商品信息、进/出货物信息、销售信息进行 查询,查询又分为精确查询和模糊查询。 3.23.2 可行性研究可行性研究 3.2.1 技术可行性 从技术角度分析,这项开发工作所涉及的专业技术为:Java 编程技术、 Swing、SQL Server2008、JDBC。由于开发中涉及 Microsoft SQL Server 2008 的应用, 所以最好使用 Windows 2000 以上的版本或 Windows XP、Windows 7 版本。 3.2.2 经济可行性 采用计算机管理不但可以提高工作效率,而且还可以节省人力、物力、财力,单从 节省的职工工资、提高工作效率而避免各种直接或间接的经济损失角

32、度来看,该系统 实际所能够起到的作用将会远远大于投入的开发费用,所以从经济上是完全可行的。 3.2.3 操作可行性 开发所采用的工具是 MyEclipse 8.5,开发出的应用程序均是图形化界面,操作员 几乎不用记住任何 DOS 命令就可以直接操作此软件。另外,软件的操作员大多已经会 基本的 Windows 操作,即使不会操作 Windows,经过短期的培训也能熟练地使用本软件, 所以在操作上也是可行的。 3.33.3 系统系统业务流程图业务流程图 1.系统前台设计 快速录入商 品 支持会员卡打折 输入条形码 销售人 员商品信息表 交易总额 会员信息表 交易信息 输入商品名 称 输入商品编 号

33、 图 3-1 前台收银总体设计图 2.系统后台设计 管理员 销售管理 库存查询 用户管理 信息查询 商品管理 统计销售量 浏览库存信息 添加、查询、修改用户 通过各种方式查询商品 商品入库/出库、进/退货以及增 加商品信息 图 3-2 后台管理总体设计图 4 4 系统总体设计系统总体设计 4.14.1 系统工作流程系统工作流程 该系统是以下面工作流程为走向的,首先打开软件进入主界面,在主界面用户可 以进行一般的销售作业,进行销售结算和交易删改,点击转入后台按钮弹出用户验证 窗,验证通过则进入后台管理模块。 当验证用户为管理员后,进入后台界面。 1.管理员用户: 在后台可进行销售管理,库存查询,

34、用户管理中的个人账户查询,信息查询商品 管理。 销售管理可以查询商品的销售信息,并以列表的形式输出销售商品的商品名称、 商品编码、销售数量、销售金额、销售日期以及金额。 库存查询可以分为浏览查询和详细查询,其中浏览返回所有商品库存信息,详细 查询则根据商品编号返回该商品的信息。 用户管理查询用户账户信息。 信息查询可以根据商品的名称编号或者条形码来查询该商品的单个信息。 商品管理可以进行出入库和进出货以及添加商品。 2.收银员用户: 收银员只能进行软件前台的销售作业。 3.超级管理员用户: 超级管理员用户拥有一切权限。 4.24.2 系统功能结构图系统功能结构图 运行软件进入主界面,管理员通过

35、密码验证进入后台进行管理,只有管理员能够 进行添加和修改用户,如图 4-1 所示: 小小便利店前台收银系统 前台销售后台管理 添 加 购 物 商 品 结 账 取 消 交 易 转 入 后 台 销 售 管 理 用 户 管 理 信 息 查 询 商 品 管 理 库 存 查 询 图 4-1 系统功能结构图 4.34.3 数据库数据库概念结构设计概念结构设计 系统各项功能的实现,归根到底是通过对数据库进行各项操作来完成的,设计质 量的好坏、数据结构的优劣,直接影响到管理系统的成败。因此要实现系统规划的功 能,提高系统的性能,首先需要有一个设计合理、功能完善的数据库。本系统根据项 目需求进行分析,考虑到收银

36、系统是分布式收银系统,作为数据处理和信息浏览的站 点,需要存储海量的数据,需要与用户进行实时交互,用户发出的各项请求必须在短 时间内得到响应,因此响应速度是评价一个站点运行好坏的一个重要指标。所以在设 计数据库时,要考虑用户查询、修改、访问的运行速度,允许数据库有一定程度的冗 余数据。 销售 商品 销售人员 账号类型 密码 证件号 会员号 用户名 折扣率 会员期限用户类型 办卡时间 积分 商品编号类别编号 商品名称商品规格 零售价 保质期 条形码 进货价 编号 备注 单位 图 4-2 销售人员-商品 E-R 图 4.44.4 数据库数据库逻辑结构设计逻辑结构设计 在此列举部分数据库表: 表 4

37、-1 用户表 名称列名数据类型长度说明 会员号CardIdVarchar20主键 用户名UserNameVarchar20不允许为空 证件号IDcardVarchar20不允许为空 密码PasswordVarchar20不允许为空 办卡时间CardDateVarchar30允许为空 用户类型UserGradeVarchar16允许为空 会员期限TermChar10允许为空 积分IntegralChar10不允许为空 折扣率AgioChar10不允许为空 账号类型RemarkVarchar200允许为空 表 4-2 商品表 名称列名数据类型长度说明 编号SequenceNumberInt4不允许

38、为空 商品编码MerchandiseNumberVarchar20主键 条形码TreatyCodeVarchar20不允许为空 类别编号SortNumberVarchar20允许为空 商品名称MerchandiseNameVarchar20不允许为空 零售价RetailPriceNumeric9允许为空 商品规格MerchandiseSpecVarchar50允许为空 单位UnitsVarchar20不允许为空 进货价PurchasePriseNumeric9不允许为空 保质期CheckTermNumeric9允许为空 备注RemarkVarchar50允许为空 表 4-3 销售表 名称列名数

39、据类型长度说明 销售编号Sale_IDNumeric9主键 产品编号ProductIDVarchar10不允许为空 销售日期SaleDateVarchar50不允许为空 数量NumberNumeric9不允许为空 单价PriceNumeric9不允许为空 金额统计DiscountVarchar10不允许为空 会员 IDVIP_IDVarchar10允许为空 产品名称ProductNameVarchar50不允许为空 表 4-4 进/退货表 名称列名数据类型长度说明 退货编号BackSale_IDNumeric9主键 产品编号Product_IDVarchar50不允许为空 产品名称Produc

40、NameVarchar20不允许为空 数量NumberNumeric9不允许为空 进货单价PriceNumeric9不允许为空 退货日期JtDateVarchar30不允许为空 管理人员SuperMarketVarchar16不允许为空 仓库号NextBackChar1不允许为空 原因reasonVarchar250允许为空 4.54.5 SQLServerSQLServer 数据库连接数据库连接 以下为该系统连接数据库的语句: public class DBAccess private static final String DRIVER = com.microsoft.sqlserver.

41、jdbc.SQLServerDriver; private static final String URL = jdbc:sqlserver:/localhost:1433;databaseName=SuperMarket; private static final String USER = sa; private static final String PASSWORD = sa; public static Connection getConnection() /连接数据库 Connection conn = null; try Class.forName(DRIVER); conn =

42、 DriverManager.getConnection(URL, USER, PASSWORD); catch (Exception ex) ex.printStackTrace(); return conn; 4.64.6 数据库维护数据库维护 1.能够在每天的某个固定的时刻(如夜晚 0:00:00,当然这个时间是可以自主设定 的)对包含所有业务数据库在内的所有关键数据库进行一次“完全备份”。 2.能够在每天的 0:00:00 至 23:59:59 这段时间内,每间隔 1 个小时对功能 1 中所 涉及到的各个数据库的事务日志进行“差异备份”。 3.每天都能够保留生成的数据库和事务日志的最近

43、两天的备份(即:前一天的和前 两天的),而且能够自动地删除久于两天前的所有数据库和事务日志的备份。 4.定期(如每个星期一次)将所有关键数据库的完全备份的副本备份到磁带或其它 存储介质上(这部分工作可能需要手工完成)。 5 5 系统详细设计系统详细设计 5.15.1 前台销售前台销售 运行软件进入主界面,进入销售模块,在主界面用户可以进行销售作业,通过输 入商品编号添加商品至购物车,系统自动列出所购商品的详细信息,并自动计算当前 购物车所有商品的总价,即应收,输入实收金额自动计算找零,点击结账完成交易, 购物车清空。点击转入后台弹出用户验证窗口。验证成功进入后台,如图 5-1 所示: 图 5-

44、1 系统主界面截图 实现代码: public Vendition_dialog() this(new Frame(), 前台收银程序, false); this.setSize(800, 600); this.setLocation(50, 50); private void jbInit() throws Exception panel1.setLayout(null); jTextField3.setEnabled(false); jTextField5.setFont(new java.awt.Font(宋体, Font.PLAIN, 30); jTextField5.setText(0

45、); jTextField5.setBounds(new Rectangle(335, 520, 125, 40); jTextField5.addKeyListener(new Vendition_dialog_jTextField5_keyAdapter(this); jButton1.setBounds(new Rectangle(436, 489, 96, 25); jButton1.setText(删除商品); jButton1.addActionListener(new Vendition_dialog_jButton1_actionAdapter(this); jButton2.

46、setBounds(new Rectangle(685, 489, 96, 25); jButton2.setText(交易取消); jButton2.addActionListener(new Vendition_dialog_jButton2_actionAdapter(this); jTextField2.addKeyListener(new Vendition_dialog_jTextField2_keyAdapter(this); jButton3.setBounds(new Rectangle(560, 489, 96, 25); jButton3.setToolTipText()

47、; jButton3.setText(前台转后台); jButton3.addActionListener(new Vendition_dialog_jButton3_actionAdapter(this); jTextField6.setFont(new java.awt.Font(宋体, Font.PLAIN, 20); jTextField6.setBounds(new Rectangle(91, 489, 152, 21); jTextField6.addFocusListener(new Vendition_dialog_jTextField6_focusAdapter(this);

48、 jLabel10.setText(会员卡号); jLabel10.setBounds(new Rectangle(30, 488, 48, 15); jLabel6.setText(0); jLabel8.setText(0); jTextField1.setFont(new java.awt.Font(宋体, Font.PLAIN, 20); jTextField1.addFocusListener(new Vendition_dialog_jTextField1_focusAdapter(this); jTextField2.setFont(new java.awt.Font(宋体, F

49、ont.PLAIN, 20); jTextField2.setText(1); jLabel11.setBorder(BorderFactory.createEtchedBorder(); jLabel11.setDebugGraphicsOptions(0); jLabel11.setBounds(new Rectangle(621, 460, 159, 21); jLabel12.setText(当前时间); jLabel12.setBounds(new Rectangle(560, 463, 48, 15); jTextField4.setEnabled(false); jTextFie

50、ld4.setText(100); jTextField4.setBounds(new Rectangle(436, 456, 96, 21); this.getContentPane().add(panel1, java.awt.BorderLayout.CENTER); jTextField1.setBounds(new Rectangle(91, 460, 152, 21); jLabel1.setText(商品编号); jLabel1.setBounds(new Rectangle(30, 463, 60, 15); jTextField2.setBounds(new Rectangl

51、e(302, 460, 72, 21); jTextField3.setBounds(new Rectangle(302, 489, 72, 21); jLabel2.setText(数量); jLabel2.setBounds(new Rectangle(267, 463, 42, 15); jLabel3.setText(单价); jLabel3.setBounds(new Rectangle(267, 489, 42, 15); jLabel4.setText(折扣); jLabel4.setBounds(new Rectangle(399, 460, 42, 15); jLabel5.

52、setFont(new java.awt.Font(宋体, Font.PLAIN, 30); jLabel5.setText(应收:); jLabel5.setBounds(new Rectangle(26, 517, 88, 40); jLabel6.setBackground(Color.white); jLabel6.setFont(new java.awt.Font(宋体, Font.PLAIN, 30); jLabel6.setBorder(BorderFactory.createEtchedBorder(); jLabel6.setBounds(new Rectangle(110,

53、 517, 125, 40); jLabel7.setFont(new java.awt.Font(宋体, Font.PLAIN, 30); jLabel7.setText(找零:); jLabel7.setBounds(new Rectangle(473, 519, 88, 40); jLabel8.setFont(new java.awt.Font(宋体, Font.PLAIN, 30); jLabel8.setBorder(BorderFactory.createEtchedBorder(); jLabel8.setBounds(new Rectangle(550, 520, 125,

54、40); jLabel9.setFont(new java.awt.Font(宋体, Font.PLAIN, 30); jLabel9.setText(实收:); 5.25.2 后台管理后台管理 验证成功后进入后台管理,后台管理包括销售管理,库存查询,用户管理,信息 查询,商品管理。点击相应标签进入子系统,如图 5-2 所示: 图 5-2 后台管理功能 实现代码: private void jbInit() throws Exception contentPane = (JPanel) getContentPane(); contentPane.setLayout(null); setSize

55、(new Dimension(930, 600); setTitle(小小便利店后台管理系统); statusBar.setText( ); statusBar.setBounds(new Rectangle(0, 585, 800, 15); DefaultMutableTreeNode root = new DefaultMutableTreeNode(进销存管理); DefaultMutableTreeNode Man2 = new DefaultMutableTreeNode(销售管理); DefaultMutableTreeNode Man3 = new DefaultMutable

56、TreeNode(库存查询); DefaultMutableTreeNode Man4 = new DefaultMutableTreeNode(用户管理); DefaultMutableTreeNode Man5 = new DefaultMutableTreeNode(信息查询); DefaultMutableTreeNode Man6 = new DefaultMutableTreeNode(商品管理); DefaultMutableTreeNode annal = new DefaultMutableTreeNode(入库/出库); DefaultMutableTreeNode ame

57、nd = new DefaultMutableTreeNode(进/退货); DefaultMutableTreeNode delete = new DefaultMutableTreeNode(新增商品); 5.2.1 销售管理 销售管理有一个子模块-销售统计,销售统计可以根据时间段或者商品编号查询 销售记录。 商品销售统计,如图 5-3 所示: 图 5-3 销售统计界面截图 实现代码: private void jbInit() throws Exception panel1.setLayout(null); jLabel1.setFont(new java.awt.Font(宋体, Fo

58、nt.BOLD | Font.ITALIC, 25); jLabel1.setForeground(Color.red); jLabel1.setText(商品销售统计); jLabel1.setBounds(new Rectangle(19, 40, 158, 35); jLabel2.setFont(new java.awt.Font(宋体, Font.BOLD, 12); jLabel2.setText(起始日期:); jLabel2.setBounds(new Rectangle(189, 31, 66, 20); jComboBox1.setBounds(new Rectangle(

59、254, 31, 55, 20); jLabel3.setText(年); jLabel3.setBounds(new Rectangle(315, 31, 26, 20); jComboBox2.setBounds(new Rectangle(336, 31, 54, 20); jLabel4.setText(月); jLabel4.setBounds(new Rectangle(396, 31, 21, 20); jComboBox3.setBounds(new Rectangle(419, 31, 56, 20); jLabel5.setText(日); jLabel5.setBound

60、s(new Rectangle(485, 31, 33, 20); jLabel6.setFont(new java.awt.Font(宋体, Font.BOLD, 12); jLabel6.setText(结束日期:); jLabel6.setBounds(new Rectangle(189, 62, 67, 20); jComboBox4.setBounds(new Rectangle(255, 62, 54, 20); jComboBox5.setBounds(new Rectangle(336, 61, 54, 20); jLabel7.setText(年); jLabel7.setB

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论