1、I本 科 毕 业 设 计 (论 文 )题 目 名 称 : 基 于 c/s 的 仓 库 智 能 管 理 系 统 II摘 要本文主要阐述了采用面向对象思想开发基于 C/S 的仓库智能管理系统的方法和过程,包括从可行性研究到系统投入使用的主要相关文档。本系统主要完成对仓库的库存管理,包括入库、出库、库存、员工信息、供应商信息以及密码管理等 6 个方面。系统可以完成对各类信息的浏览、查询、添加、删修改、报表等功能。系统的开发环境为 mysql+Myeclipse。使用 Myeclipse 时限逻辑代码。系统实现了系统设置,单据填开,库存查询,报表导出等功能。其中系统设置包括:管理员的增加,修改,删除,
2、以及权限管理;仓库内货物的基本资料的增加,修改,删除;商家的基本资料的增加,修改,删除。单据填开模块包括:出库单,入库单,等单据的填开级作废操作。库存查询系统包括:库存情况的查询,各项明细的查询。该系统是对仓库的智能管理,并进行相应的采购管理、入库管理、出库管理、报表管理等一些仓库方面的管理。该系统可以方便地实现商品的入库操作和出库操作、以及报表输出等功能,这些功能的实现对该公司的仓库管理从以往的手工管理过渡到计算机的信息化管理,从而大大提高了工作效率。关键词:数据库;sql 语言;Myeclipse ;数据库组建;仓库管理IIIAbstractThe system mainly refers
3、 to warehousing management,which includes the folllowing fields:stock in and out,inventory,staff data,suppliers data and password management.It also offers the funcions as data browse, adding,deleting,modification and report,etc.The System development environment is mysql and Myeclipse.It contains 3
4、 modules,system management,receipts management and inventory query.System management module is used to conduct operater adding.modification.deleting and authoirties assignmentmin addition,inventory,staff andcustomer data adding,modification and deleting;the second part refers to stock in and out,rec
5、eipts fill-in cancellation; thelast maodule contends to warehousing query,staff salary query,monthly,quarterly,yearly report query.As stated previously,the sysrem is an intelligent warehousing management solution.which includes:purchasing management,stock in and our management,report management,etc.
6、The system can expediently carry out the merchandise to store in warehouse the operation and a database operation, and the statement print etc. function, the realization of these functions manages to the stock of that company to manage to transfer the information-based management of the calculator f
7、rom the former handicraft, raising the work efficiency thus and consumedly.Key words:database; SQL;Myeclipse ;Database module; Database management目 录摘 要 .IAbstract.II第 1 章 绪论 .11.1 选题背景 .11.2 国内外发展概况及存在的问题 .21.3 选题目的、意义 .21.4 课题应解决主要问题 .31.5 指导思想 .3第 2 章 系统分析 .62.1 可行性研究 .62.1.1 技术可行性研究 .62.1.2 经济可行
8、性研究 .72.2 需求分析 .82.2.1 理解需求 .82.2.2 分析需求 .102.2.3 数据处理需求 .10第 3 章 概要设计 .123.1 总体构想 .123.2 据库设计模块 .123.2.1 数据库结构设计 .123.2.2 连接数据库 .133.3 功能模块设计 .143.3.1 客户端的基本功能 .153.3.2 服务器的基本功能 .15第 4 章 详细设计及实现 .164.1 程序主体框架设计 .164.2 程序流图 .164.3 客户端窗口及相关功能 .184.4 服务器功能实现 .244.4.1 多线程监听功能的实现 .244.4.2 数据传输功能的实现 .254
9、.4.3 数据库持久层功能的实现 .274.4.4 数据统计的实现 .32第 5 章 系统测试 .345.1 单元测试 .345.1.1 白盒测试 .345.1.2 黑盒测试 .345.2 功能测试 .355.2.1 仓库管理的功能测试 .355.2.2 商品管理模块的测试 .355.2.3 数据传输模块的测试 .355.2.4 数据库仓储模块的测试 .355.3 集成测试与系统测试 .355.4 程序的异常处理 .365.5 调试 .37结 论 .38致 谢 .39参考文献 .40附 录 .411第 1 章 绪论1.1 选题背景随着社会发展,物流行业已经成为一个与我们的生活息息相关的行业。该
10、行业最大的特点就是数据量极大,每日的进销量都是一个惊人的数字,传统的纸质记录方法既浪费人力物力,又缺乏准确性、安全性。但在信息时代的今天,这种庞大的数据采集记录工作只需交给一台电脑,一两个管理人员操作即可。所以,我们有必要开发一个完整、安全、便捷、高效率的仓库智能管理系统,来配合管理人员完成数据采集。我国物流市场潜力巨大是不争的事实,随着加入WTO后开放的步伐逐步加快,我国的“世界工厂 ”的雏形已经显现,世界主要的跨国公司均在我国部署了他们的研发基地、生产基地,这将吸引更多的国内外物流企业进入这个市场。但是国内物流企业规模小、数量多,缺少竞争优势,并且技术含量低,要想在这个大市场下取得优势,必
11、须减少成本,增强企业效率,提供更具信息化、人性化、快速化、便捷化的服务,电子商务不免是一个明智的选择,电子商务给企业带来的效益不言而喻。仓储管理在物流管理中占据着核心的地位。传统的仓储业是以收保管费为商业模式的,希望自己的仓库总是满满的,这种模式与物流的宗旨背道而驰。现代物流以整合流程、协调上下游为己任,静态库存越少越好,其商业模式也建立在物流总成本的考核之上。由于这两类仓储管理在商业模式上有着本质区别,但是在具体操作上如入库、出库、分拣、理货等又很难区别,所以在分析研究必须注意它们的异同之处,这些异同也会体现在信息系统的结构上。 随着制造环境的改变,产品周期越来越短,多样少量的生产方式,对库
12、存限制的要求越来越高,因而必须建立及执行供应链管理系统,借助电脑化、信息化将供应商、制造商、客户三者紧密联合,共担库存风险。仓储管理可以简单概括为 8 个关键管理模式:追-收-查-储-拣-发-盘-退。设计模式提供了一种共享经验的方式,可以使团体受益和避免不断的重复发明。设计模式通常捕捉问题的描述、问题的语境、推荐的问题解决方案以及使用解决方案后可以预见到的结果。为了具有最广泛的适用性(从而对更多的读者有用) ,设计模式通常从取决于环境的精确细节中抽象而来。这种抽象性产生了一些把设计模式应用到现有的案例中所必需的译码。C/S( 客 户 端 /服 务 器 ) 结 构 的 优 点 是 能 充 分 发
13、 挥 客 户 端 PC的 处 理 能 力 , 很多 工 作 可 以 在 客 户 端 处 理 后 再 提 交 给 服 务 器 。 对 应 的 优 点 就 是 客 户 端 响 应 速 度 快 ,降 低 服 务 器 的 运 行 数 据 负 荷 量 。 方 便 快 捷 , 让 使 用 者 拥 有 更 高 的 自 由 性 和 灵 活 性 。2本次毕业设计,利用c/s结构来实现一个仓库智能管理系统。1.2 国内外发展概况及存在的问题当今的主流仓库管理系统主要是以“便捷、高效、智能、安全”作为设计理念。传统的仓库管理系统只注重“进、销、存”三项基本功能,在其他方面显的用心不足,技术比较落后,工作效率也低。致
14、使很多优秀的仓库管理系统都在不断的提高自身性能。从国外的经验来看,一个优秀的仓库管理系统应该具备以下几点:1、有效的人工管理。2、通过智能系统和布局使柔性最大化。3、与合作伙伴的仓储管理系统一体化。4、不要只局限于收货、储存和运送5、在仓库内安装逆向传动装置。6、在仓库内建设一个中枢指挥中心。7、准确测量,快速反应。8、无线射频与语音技术的结合。9、最优化供应链中的仓库。10、不要被技术所迷惑。从我们国内的实际脚步出发,在汲取以上经验的同时,我们还要注意一下几点:1、我们市场比较大,所以应扩大服务器的网络覆盖面积(支持多线程客户端) 。2、加强系统的便捷性。3、完善系统自身,对数据做好保护,避
15、免由于外界原因而造成的数据损坏或丢失。目前市场上出现的仓库管理系统都十分优秀,功能丰富,界面美观。例如中小企业最常用的“管家婆”软件。但这些软件仍然有需要问题要解决,最明显的就是操作复杂。绝大部分用户只需要出库、入库的记账功能,花哨的界面、臃肿的结构和复杂的操作使得很多用户都抱怨软件不好用。所以我们需要开发一种功能全面,但操作简单的仓库管理软件。1.3 选题目的、意义随着我国经济迅猛发展,各类商品流动及其频繁,复杂的供应链编织着我国的经济市场。仓储在企业的整个供应链中起着至关重要的作用,如果不能保证正确的进货和库存控制及发货,将会导致管理费用的增加,服务质量难以得到保证,从而影响企业的竞争力。
16、传统简单、静态的仓储管理已无法保证企业各种资源的高效利3用。如今的仓库作业和库存控制作业已十分复杂化多样化,仅靠人工记忆和手工录入,不但费时费力,而且容易出错,给企业带来巨大损失。仓库存放的货物品种繁多,堆存方式以及处理过程也非常复杂,随着业务量的增加,仓库管理者需要处理的信息量会大幅上升,因此往往很难及时准确的掌握整个仓库的运作状态。针对这一情况,本系统在满足仓库的基本管理功能基础上发挥信息系统的智能化,减轻仓库管理人员和操作人员的工作负担。系统主要的实现目标是监控整个仓库的运转情况;提供完善的任务计划功能,由整个操作的指令中心来安排进出任务,确认任务的开始,进货管理和出货管理按其指令执行即
17、可;实时监控所有货物的在线运动情况,实时提供库存变化的信息。仓储管理及精确定位在企业的整个管理流程中起着非常重要的作用,如果不能保证及时准确的进货、库存控制和发货,将会给企业带来巨大损失,这不仅表现为企业各项管理费用的增加,而且会导致客户服务质量难以得到保证,最终影响企业的市场竞争力。所以我们提出了全新基于射频识别的仓库系统方案来解决精确仓储管理问题。1.4 课题应解决主要问题本系統使用 Core java 技术开发的基于 c/s 的仓库智能管理系统。后台数据库使用 mysql, windows XP 作为平台,可以有效管理各种数据信息。客户方面,要做的尽可能人性化点,一般用户登录时就能进行基
18、本的操作,如一般的查看各种信息。1.5 指导思想 1. c/s 结构。客户端/服务器结构,即大家熟知的客户机和服务器结构。它是软件系统体系结构,通过它可以充分利用两端硬件环境的优势,将任务合理分配到Client 端和 Server 端来实现,降低了系统的通讯开销。目前大多数应用软件系统都是 Client/Server 形式的两层结构,由于现在的软件应用系统正在向分布式的Web 应用发展,Web 和 Client/Server 应用都可以进行同样的业务处理,应用不同的模块共享逻辑组件;因此,内部的和外部的用户都可以访问新的和现有的应用系统,通过现有应用系统中的逻辑可以扩展出新的应用系统。这也就是
19、目前应用系统的发展方向。2. Java JDBC 技术。J DBC( Java Database Connectivity) 提 供 连 接 各 种 关系 数 据 库 的 统 一 接 口 ,可 以 为 多 种 关 系 数 据 库 提 供 统 一 访 问 , 它 由 一 组 用 Java语 言 编 写 的 类 和 接 口 组 成 。 JDBC 为 工 具 /数 据 库 开 发 人 员 提 供 了 一 个 标 准 的API, 据 此 可 以 构 建 更 高 级 的 工 具 和 接 口 , 使 数 据 库 开 发 人 员 能 够 用 纯 Java API 编 写 数 据 库 应 用 程 序 。3.
20、Eclipse 环境。Eclipse 是一个开放源代码的、基于 Java 的可扩展开发平4台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括 Java 开发工具(Java Development Tools,JDT)。 Eclipse 最初是由 IBM 公司开发的替代商业软件 Visual Age for Java 的下一代 IDE 开发环境,2001 年 11 月贡献给开源社区,现在它由非营利软件供应商联盟Eclipse 基金会(Eclipse Foundation)管理。 2003 年,Eclipse 3.0 选
21、择 OSGi服务平台规范为运行时架构。 2007 年 6 月,稳定版 3.3 发布。2008 年 6 月发布代号为 Ganymede 的 3.4 版。2009 年 7 月发布代号为 GALILEO 的 3.5 版。Eclipse 是著名的跨平台的自由集成开发环境(IDE)。最初主要用来 Java 语言开发,但是目前亦有人通过插件使其作为其他计算机语言比如 C+和 Python 的开发工具。Eclipse 的本身只是一个框架平台,但是众多插件的支持使得 Eclipse 拥有其他功能相对固定的 IDE 软件很难具有的灵活性。许多软件开发商以 Eclipse 为框架开发自己的 IDE。Eclipse
22、 最初由 OTI 和 IBM 两家公司的 IDE 产品开发组创建,起始于 1999 年 4月。IBM 提供了最初的 Eclipse 代码基础,包括 Platform、JDT 和 PDE。目前由 IBM牵头,围绕着 Eclipse 项目已经发展成为了一个庞大的 Eclipse 联盟,有 150 多家软件公司参与到 Eclipse 项目中,其中包括 Borland、Rational Software、Red Hat 及 Sybase 等。Eclipse 是一个开发源码项目,它其实是 Visual Age for Java的替代品,其界面跟先前的 Visual Age for Java 差不多,但由
23、于其开放源码,任何人都可以免费得到,并可以在此基础上开发各自的插件,因此越来越受人们关注。近期还有包括 Oracle 在内的许多大公司也纷纷加入了该项目,并宣称 Eclipse 将来能成为可进行任何语言开发的 IDE 集大成者,使用者只需下载各种语言的插件即可。虽然大多数用户很乐于将 Eclipse 当作 Java IDE 来使用,但 Eclipse 的目标不仅限于此。Eclipse 还包括插件开发环境(Plug-in Development Environment,PDE),这个组件主要针对希望扩展 Eclipse 的软件开发人员,因为它允许他们构建与 Eclipse 环境无缝集成的工具。由
24、于 Eclipse 中的每样东西都是插件,对于给 Eclipse 提供插件,以及给用户提供一致和统一的集成开发环境而言,所有工具开发人员都具有同等的发挥场所。基于 Eclipse 的应用程序的突出例子是 IBM 的 WebSphere Studio Workbench,它构成了 IBM Java 开发工具系列的基础。例如,WebSphere Studio Application Developer 添加了对 JSP、servlet 、EJB、XML、Web 服务和数据库访问的支持。 Eclipse 是一个开放源代码的软件开发项目,专注于为高度集成的工具开发提供一个全功能的、具有商业品质的工业平
25、台。它主要由 Eclipse 项目、Eclipse 工具项目和 Eclipse 技术项目三个项目组成,具体包括四个部分组成Eclipse Platform、JDT、CDT 和 PDE.JDT 支持 Java 开发、CDT 支持 C 开发、PDE 用来支持插件开发,Eclipse Platform 则是一个开放的可扩展 IDE,提供了一个通用的开发平5台。它提供建造块和构造并运行集成软件开发工具的基础。Eclipse Platform 允许工具建造者独立开发与他人工具无缝集成的工具从而无须分辨一个工具功能在哪里结束,而另一个工具功能在哪里开始。Eclipse SDK(软件开发者包)是 Eclip
26、se Platform、JDT 和 PDE 所生产的组件合并,它们可以一次下载。这些部分在一起提供了一个具有丰富特性的开发环境,允许开发者有效地建造可以无缝集成到 Eclipse Platform 中的工具。Eclipse SDK由 Eclipse 项目生产的工具和来自其它开放源代码的第三方软件组合而成。Eclipse项目生产的软件以 CPL 发布,第三方组件有各自自身的许可协议。4. MySQL 数据库。MySQL 是最受欢迎的开源 SQL 数据库管理系统,它由 MySQL AB 开发、发布和支持。MySQL AB 是一家基于 MySQL 开发人员的商业公司,它是一家使用了一种成功的商业模式
27、来结合开源价值和方法论的第二代开源公司。MySQL 是MySQL AB 的注册商标。 MySQL 是一个快速的、多线程、多用户和健壮的 SQL 数据库服务器。MySQL 服务器支持关键任务、重负载生产系统的使用,也可以将它嵌入到一个大配置(mass-deployed)的软件中去。MySQL 是一个数据库管理系统。一个数据库是一个结构化的数据集合。它可以是从一个简单的销售表到一个美术馆、或者一个社团网络的庞大的信息集合。如果要添加、访问和处理存储在一个计算机数据库中的数据,你就需要一个像 MySQL 这样的数据库管理系统。从计算机可以很好的处理大量的数据以来,数据库管理系统就在计算机处理中和独立
28、应用程序或其他部分应用程序一样扮演着一个重要的角色。MySQL 是一个关系数据库管理系统。关系数据库把数据存放在分立的表格中,这比把所有数据存放在一个大仓库中要好得多,这样做将增加你的速度和灵活性。“MySQL”中的 SQL 代表“Structured Query Language”(结构化查询语言)。SQL是用于访问数据库的最通用的标准语言,它是由 ANSI/ISO 定义的 SQL 标准。SQL 标准发展自 1986 年以来,已经存在多个版本:SQL-86,SQL-92,SQL:1999,SQL:2003,其中 SQL:2003 是该标准的当前版本。MySQL 是开源的。开源意味着任何人都可
29、以使用和修改该软件,任何人都可以从 Internet 上下载和使用 MySQL 而不需要支付任何费用。如果你愿意,你可以研究其源代码,并根据你的需要修改它。MySQL 服务器是一个快的、可靠的和易于使用的数据库服务器。如果这是你正在寻找的,你可以试一试。MySQL 服务器还包含一个由用户紧密合作开发的实用特性集。MySQL 服务器原本就是开发比已存在的数据库更快的用于处理大的数据库的解决方案,并且已经成功用于高苛刻生产环境多年。尽管 MySQL 仍在开发中,但它已经提供一个丰富和极其有用的功能集。它的连接性、速度和安全性使 MySQL 非常适合访问在 Internet 上的数据库。MySQL 服务器工作在客户/服务器或嵌入系统中。MySQL 数据库服务器是一个客户/服务器系统,它由多线程 SQL 服务器组成,支持不同的后端、多个不同的客户程