




已阅读5页,还剩33页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
毕业设计 论文 毕业设计 论文 题 目 超市管理系统超市管理系统 姓 名 学 号 专业班级 指导教师 分 院 信息科学与工程学院信息科学与工程学院 完成日期 2013 年年 5 月月 28 日日 I 摘摘 要要 本文建立了一种基于粒子群 PSO 算法优化BP神经网络的改进股票预测模 型 该模型采用时间序列作为输入数据 以此来构造BP神经网络拓扑结构 利 用粒子群算法优化BP神经网络的权值和阈值 同时 考虑到由于股票市场受到 多种因素的影响 故股票价格形成的时间序列是非平稳的且具有强噪声的 本 文用小波降噪来处理样本数据 使得数据更加真实地反映股票趋势 结果表明 经过小波降噪处理后的时间序列数据更加平稳 粒子群算法优 化后的BP神经网络预测模型能够有效弥补BP神经网络的不足 改善BP神经网络 易陷入局部最优的问题 在一定程度上达到了提高算法性能的目的 关键词关键词 小波降噪 BP神经网络 股票预测 PSO优化 II Abstract Based on the analysis and study of the artificial neural network ANN this paper proposes the improved stock forecasting model of BP neural network optimized on the foundation of Particle Swarm Optimization This model uses time series as the input data to establish BP s Back Propagation neural network topology and uses Particle Swarm Optimization to optimize the its weight and threshold In the meantime taking the various factors that affect stock market into consideration it can be found that the time series of stock price is unstable and strong noisy Wavelet de noising is used to deal with sample data so that the data can more authentically reflect the stock tendency The results show that the time series data after wavelet de noising are more stable BP neural network forecasting model after Particle Swarm Optimization can make up the weakness of BP neutral network and mend the problem that BP neural network can easily get stuck into local optimum As a result this can obviously improve arithmetic performance to certain extend Keywords Wavelet noise reduction BP neural network Stock forecast PSO optimization III 目 录 摘摘 要要 I ABSTRACT II 目目 录录 III 第第 1 章章概述概述 5 1 1引言 5 1 2超市管理的研究现状 6 1 3超市管理系统主流开发技术 7 1 4超市管理中存在问题 8 1 5选题的意义 9 1 6本文研究内容 10 第第 2 章章开发环境及关键技术研究开发环境及关键技术研究 12 2 1开发环境及相关介绍 12 2 1 1 开发环境 12 2 1 2 数据库 12 2 1 3 java 语言 13 2 2关键技术 14 2 2 1 AJAX 技术 14 2 2 1 JSON 技术 14 2 2 2 SESSION 和 JQuery 15 第第 3 章章需求分析和系统设计需求分析和系统设计 16 3 1需求分析 16 3 1 1 功能需求 16 3 1 2 性能需求 16 3 1 3 用户体验需求 16 IV 3 2系统结构和流程图 17 3 2 1系统的组成结构 17 3 2 2 流程图 17 3 3系统设计 18 3 3 1 数据库设计 18 3 3 2 功能模块设计 22 第第 4 章章超市管理系统的实现超市管理系统的实现 23 4 1超市管理系统界面与功能简述 23 4 2系统代码结构 29 4 3网站关键技术实现 30 第第 5 章章总结和展望总结和展望 33 5 1 总结 33 5 2 展望 34 参考文献参考文献 35 致谢致谢 37 5 第第 1 章章 概述概述 1 1 引言 我国超市形成在 90 年代初期 现在已经成为我国零售业的一种重要形态 为国民经济的发展发挥了重要的作用 Error Reference source not found 随着超市的快速 发展 其经营管理也变得愈加复杂 售货员站柜台的形式早已不能满足销售业 的发展 超市的管理软件就显得必不可少了 一款好的超市管理系统 应该是可以帮助超市提高工作效率 帮助超市工 作人员利用计算机 极为方便的对超市的有关数 据进行管理 输入 输出 查 找等有关操作 使杂乱的超市数据能够具体化 直观化 合理化等 超市软件系统从企业运营及管理的实际情况出发 结合当前中国零售业业 态发展趋势 顺应了零售行业对信息化的要求 为商业管理信息系统提供了系 统全面的技术解决方案 基于以上原因 超市信息管理系统目前在各个商业领 域都发挥了很大的作用 也得到了越来越多的大 中 小型商业企业的应用 但就目前的应用状况分析 管理系统在中 高端企业得到了广泛的应用和重视 在小型企业 零售店的应用 仅局限于信息化的表面层次 没有得到高度的重 视 同时 小企业也因资金方面问题限制了其向更高程度信息化的应用 目前 中国主流的超市管理软件有金蝶系列管理软件 如金蝶 K 3 金蝶 KIS 金蝶 HR 等 金动力管理软件 如金动力企业管理软件 金动力库存管理 软件 瑞星的超市管理系统 百财超市管理系统 精诚超市管理系统 科脉超 市管理系统等等 但是 这一系列管理系统大多采用 C S 架构进行开发的 超 市采用 C S 架构开发的系统成本高 难维护 一些大型的超市软件业务繁琐不 适合中小型超市的业务管理 B S 架构的出现正好解决了这个问题 基于 B S 的架构开发已经成为了近几年软件开发的主流 其中 J2EE 的 开源框架发展良好 以其优秀的可扩展性 良好的可维护性在软件开发领域大 受欢迎 同时应用于各种需要信息服务 无纸化办公的领域 降低了开发的难 度和成本 使用常见的框架 Struts2 Hibernate Spring SSH 将其整合使用 达到提高工作的效率的目标并能适应多变的业务需求 是现在软件开发中一个 6 流行解决方案 1 2 超市管理的研究现状 超市管理自超市出现以来 一直受到社会的广泛关注 经过国内外许多学 者的研究得出了许多针对超市管理的方法 超市的管理最主要有采购 销售和 库存 1 采购管理的研究 采购的重要性最早是在 1832 年被提出 Charles Babbage 指出 负责资源的 关键职员是负责选择采购 接受合格配送的物料人 20 世纪初 采购进入了 第二个比较重要的时期 第一本针对采购的 The Book On Buying 在 1905 年 被出版 这本书介绍了采购的一般原则以及在不同公司采购系统中所使用的形 式和流程 在 20 世纪 90 年代采购概念和采购管理得到了极大的发展 采购的 5R 原则即正确的时间 正确的地点 以正确的价格条款 从正确的供应商那儿 买到正确数量和质量的商品 2007 年 赵道致和贾金英通过分析当时各大超市 的采购方法 采用 ABC 分类方法重组超市采购商品结构 Error Reference source not found 达到降低成本与供应商实现双赢 楼曙英于 2012 年结合集力公司当时的 采购模式 通过设置评价值和权重 建立了供应商选择模型 Error Reference source not found 尹逊芹和徐耀群于 2012 年在 AHP 层次分析理论基础上 建立了采购模 式的选择模型 Error Reference source not found 2 销售管理的研究 商品是超市的重要组成部分 而商品的销售是超市管理中非常重要的一块 商品销售信息采集与计算直接影响到超市的采购与库存 黄宏本和卢雪燕于 2011 年提出了一种基于二维数组的关联规则挖掘算法 Error Reference source not found 并使用编程实现挖掘系统 通过超市购物数据测试表明 算法高效可行 所实 现的系统轻巧 性能出色 王新春和汝艳红于 2012 年基于复杂网络建立了一个 数学模型 Error Reference source not found 使复杂的销售信息更加直观 3 库存管理的研究 1915 年 美国的 F W 哈里斯发表关于经济订货批量的模型 开创了现代库 存理论的研究 1965 年约瑟夫 奥利奇博士总结出了一种新的管理理论 物料需 7 求计划 MRP 理论 MRPII 理论 Error Reference source not found 由维特于 1981 年推出 MRPII 从市场预测 生产计划 物料需求 库存控制 车间控制 延伸到产品 销售的整个生产经营过程以及与之有关的所有财务活动中 随着管理工作的科 学化 库存管理的理论有了很大的发展 形成许多库存模型 应用于企业管理 中已得到显著的效果 张庆民等于 2011 年基于模糊理论和贝叶斯学习理论设计 了协商模型 Error Reference source not found 有效的化解了在供应链多级库存管理的过 程中 公司间的订货冲突 顾志强于 2011 年通过数学建模构建了一个库存优化 模型 Error Reference source not found 经大量数据验证该模型在有效的减轻了库存成本 余黎于 2012 年利用 Witness 软件模拟企业库存问题 给出了九种不同的订货策 略 Error Reference source not found 从中选出了最优策略 根据学者的诸多研究 同时随着计算机技术的出现 软件开发人员设计与 开发出了许多超市管理系统 刘汝洁于 2012 年开发的收银管理系统 Error Reference source not found 就对超市的收银管理带来了很大的便利 吴效珩于 2012 年通 过对数据库的研究优化了计算机对超市库存的管理 编写了超市后台管理系统 Error Reference source not found 赵博通过分析超市进销存流程开发了一个超市进销存 管理系统 伍明星 Error Reference source not found 等通过 java 语言编写了一个超市信息 管理系统 秦宇伟 Error Reference source not found 于 2011 年根据当时的主流技术开发 了一个超市管理系统 随着计算机技术的不断发展 超市管理软件开发的质量 越来越高 性能也越来越好 1 3 超市管理系统主流开发技术 针对超市的管理许多学者研究出了许多方法 而计算机管理软件出现 更是 开发出了许多优秀的超市管理软件 超市管理软件开发的技术多种多样 目前 主要是基于 B S 或 C S 结构开发的 1 B S 超市管理系统的主流开发技术 B S 超市管理系统开发技术有 ASP PHP J2EE 等 ASP 是 Active Server Page 的缩写 意为 动态服务器页面 Error Reference source not found ASP 是微软公司开发的代替 CGI 脚本程序的一种应用 它可以与数据 库和其它程序进行交互 是一种简单 方便的编程工具 8 PHPError Reference source not found 是一种 HTML 内嵌式的语言 是一种在服务器端 执行的嵌入 HTML 文档的脚本语言 语言的风格有类似于 C 语言 被广泛地运 用 PHP 的优势是开放的源代码 程序开发快 运行快 技术本身学习起来快 跨平台性强 效率高 J2EEError Reference source not found 是一套全然不同于传统应用开发的技术架构 包 含许多组件 主要可简化且规范应用系统的开发与部署 进而提高可移植性 安全与再用价值 J2EE 核心是一组技术规范与指南 其中所包含的各类组件 服务架构及技术层次 均有共同的标准及规格 让各种依循 J2EE 架构的不同 平台之间 存在良好的兼容性 解决过去企业后端使用的信息产品彼此之间无 法兼容 企业内部或外部难以互通的窘境 2 C S 超市管理系统的主流开发技术 B S 超市管理系统开发技术有 Java C C 以及 Dephi 等 Java 语言是基于 Java 虚拟机的 它最大的优势在于一次编译 到处运行 它并不需要考虑各种系统之上的不同系统调用 所有的系统调用都可以通过底 层的 JVM 的封装来完成 开发者在开发过程中不用考虑操作系统层面的编程知 识 同时 Java 的优势还在于它的开源和封装 Java 提供了强大的类库支持 包 括多线程 数据结构 socket 编程等 让开发者可以把更多关注放在程序的编 写基础之上 而不是放在实现一些底层的应用程序 同时 Java 还提供了垃圾 回收机制 C 的特质在于它的高效性 它是直接和底层打交道的语言 C 的特性还 在于它的面向对象的封装 这点和 Java 是类似的 但是它有兼有了 C 语言快速 高效的特性 所以在开发类似网游 搜索等项目的时候 通常采用 C C 是微软主推的一种面向对象的语言 它是建立在 NET Framework 之上的 C 在 Visual Studio 之上的良好兼容性让 C 语言获得了快速上手的特性 同时由 于其丰富的控件库 让 C 语言得到很多开发者的青睐 同时 C 语言对于制作 C S 程序也是非常方便的 很多代码都是 IDE 直接生成的 开发者只需要实现 部分逻辑 1 4 超市管理中存在问题 9 中国超市主要存在问题有以下四点 1 供货引起的存货管理问题 我们大多数企业的存货周转期在 50 到 70 天之间 中小型超市由于进货量 少又大多是食品其周转期大多为一周左右 因为周转周期短 所以及时供货成 了超市经营的主要问题 而中小型超市在供货中的问题是 一方面 计划员没有较高的业务素质 由于工作时间短 对供货渠道和进 价没有充分的了解 同时对于销售商品的记录不及时 不能做出合理的供货计 划 另一方面 供货行为不规范 透明度低 采购员未对供货单位的品质 价 格 财务信誉动态监控 未做到同类产品货比多家 以求价格最低 质量最优 未督促供货商及时供货 2 存货管理中存在的实务操作问题 大型超市存货管理组织架构是仓库主管下设置收货员 订货员和仓库核算 人员 中小型超市连这种分工都没有 仅由两人共同负责超市存货的收转和管 理 组织架构设置的过于笼统 导致下列问题 收货员之间的分工不明 不利 于明确责任 未设验货人员 无法实现内部控制 存货信息失真 订货员的专 业技术性差 3 销售中的存货管理问题 做到及时补货 以销定存 这作为以销售作为根本的超市来说是重中之重 在销售过程中应将不同的商品按分类分批管理的原则来存放 由于中小型超市 存储空间较小 货品主要是不固定位置弹性运作 这样所有货品剩存货物主要 由营业员靠记忆力来记忆 常常是柜台缺货无法及时找到货补 或是存货已尽 未及时联系供货商 造成缺货 影响超市正常销售 4 国内大多数超市管理系统是采用 C S 架构开发的 基于典型的 C S 架构方式来完成 业务逻辑位于客户端 每完成一项事务 都要频繁的访问数据库 使得网络上数据流量非常大 而且需在每一台客户机 上安装客户端软件 客户端软件的维护量特别大 传统的 C S 架构的软件需要 针对不同的操作系统开发不同版本的软件 它无法面对众多的操作系统和软件 快速的升级换代 需要高昂的维护成本且投资大 10 1 5 选题的意义 本文宗旨在建立一个基于 B S 的超市信息管理系统 超市管理系统是市场上最流行的超市上常用的系统之一 它主要包含以下 几个模块 系统权限的设定 原始数据录入 数据的汇总及查询等 从而 实 现对进货 销售及员工信息等实现全面 动态 及时的管理 随着中小型超市发展规模的不断扩大 商品数量急剧增加 有关商品的各 种信息量也成倍增长 超市时时刻刻都需要对商品各种信息进行统计分析 而 大型的超市管理系统功能过于强大而造成操作繁琐降低了小超市的工作效率 本文设计的超市信息管理系统采用了 struts2 spring hibernate 的技术框架 来构建其核心的业务流程控制 通过 AJAX 技术来实时更新商品 供应商 销 售和采购信息 同时 系统的开发成本低 易于维护是中小型超市管理系统开 发的最好选择 1 6 本文研究内容 随着互联网的飞速发展 网络成为了人们快速获取和传递信息的重要渠道 它在人们的生活中发挥着重要的作用 在此基础上 网站形式的管理系统越来 越收到人们的爱戴 网站形式的管理系统开发快速 使用方便 便于维护和扩 展 而且成本低 目前大多数的超市管理系统都是采用客户端服务器的形式进 行开发的 成本高 且难维护 所以本文就针对开发一个 B S 的超市管理系统 做了以下研究工作 1 Struts2 String Hibernate 搭建系统 使用 Struts2 String Hibernate 三大框架采用注解的技术 Struts2 在系统中 对每个页面的请求和返回数据的走向做控制 Spring 控制着系统中所有的 DAO 层和 Action 之间的调用 起到控制反转的作用 将控制权交到 Spring 容器中 Hibernate 封装了系统的数据持久层 完成了对象关系映射 将对数据操作从原 先繁琐的数据字段提取封装起来 开发者只要操作与数据表对应的实体类对象 就可以操作对象 并且可以定义表关系 2 Ajax 的形式发送请求 用 json 封装数据 11 本系统在很多地方都采用了 Ajax json 的方式对请求进行了封装 采用 Ajax 可以实现数据提交后获取返回数据无刷新显示 可以给用户更良好的使用 体验 Ajax 在 Jquery 中进行了简化 所以使用起来非常方便快捷 Json 有两种 数据格式 一种数组 一种对象 我们可以将返回页面的数据转换为 JsonObject 的对象给页面 页面上可以通过对象获取属性的方式轻松的获取到 后台返回回来的数据 3 使用 html 标签和一些 js 扩展包搭前台界面 本系统采用的是比较简单的 table 标签来对一张网页进行布局 还有一些特 殊的控件 如时间控件 是采用网上提供的 js 包 使用里面的接口来进行搭配 一些后台传回来的数据需要动态显示或隐藏 本系统通过 Struts2 自带的标签获 取到后台的数据 判断数据的显示与隐藏 12 第第 2 章章 开发环境及关键技术研究开发环境及关键技术研究 2 1 开发环境及相关介绍 超市管理系统是基于 Struts2 String Hibernate 三大框架 在 Microsoft7 下 环境下使用 MyEclipse 10 0 开发 系统主要分为系统前台销售和系统后台管理 由数据库 本系统采用 MySQL 前台销售 后台管理三部分组成 2 1 1 开发环境 操作系统 Microsoft Windows XP 程序语言 Java 开发包 JDK 1 6 Struts 2 String Hibernate IDE MyEclipse 10 0 Web 服务器 Tomcat 6 0 2 1 2 数据库 本系统采用的是 MySQL 数据库 如果本系统投入实际使用 那么从数据 量 性能和安全上考虑的话 商品信息库应该采用性能更好且更稳定的大型数 据库系统 如甲骨文的 Oracle 数据库 之所以本系统选择 MySQL 是考虑到 本系统的数据来源主要是人工输入的或者程序生成的模拟数据 而并非庞大的 大型超市的实际数据 数据量不大 选择采用轻量级的 MySQL 对于本系统的 开发和部署相对比较简易和迅速 MySQLError Reference source not found 是一个关系型数据库管理系统 由瑞典 MySQL AB 公司开发 目前属于 Oracle 公司 MySQL 是一种关联数据库管理 系统 关联数据库将数据保存在不同的表中 而不是将所有数据放在一个大仓 库内 这样就增加了速度并提高了灵活性 MySQL 的 SQL 语言是用于访问数 据库的最常用标准化语言 MySQL 软件采用了双授权政策 本词条 授权政策 它分为社区版和商业版 由于其体积小 速度快 总体拥有成本低 尤其是 开放源码这一特点 一般中小型网站的开发都选择 MySQL 作为网站数据库 1 使用 C 和 C 编写 经多种编译器进行测试 保证源代码可移植性 13 2 支持 AIX FreeBSD HP UX Linux Mac OS NovellNetware OpenBSD OS 2 Wrap Solaris Windows 等多种操作系 统 3 为多种编程语言提供了 API 这些编程语言包括 C C PHP Python Java Perl Eiffel Ruby 和 Tcl 等 4 支持多线程 充分利用 CPU 资源 5 优化的 SQL 查询算法 有效地提高查询速度 6 既能够作为一个单独的应用程序应用在客户端服务器网络环境中 也能 够作为一个库而嵌入到其他的软件中 7 提供多语言支持 常见的编码如中文的 GB 2312 BIG5 日文的 Shift JIS 等都可以用作数据表名和数据列名 8 提供 TCP IP ODBC 和 JDBC 等多种数据库连接途径 9 提供用于管理 检查 优化数据库操作的管理工具 10 支持大型的数据库 可以处理拥有上千万条记录的大型数据库 11 支持多种存储引擎 2 1 3 java 语言 Java 是一种面向对象的程序设计语言 它可以撰写跨平台应用软件 是由 Sun Microsystems 公司于 1995 年 5 月推出的 Java 程序设计语言和 Java 平台 即 JavaSE JavaEE JavaME 的总称 Error Reference source not found Java 技术具有 卓越的通用性 高效性 平台移植性和安全性 广泛应用于个人 PC 数据中心 游戏控制台 科学超级计算机 移动电话和互联网 同时拥有全球最大的开发 者专业社群 Java 具有一下特点 1 简单易学 Java 语言的语法与 C 语言和 C 语言很接近 使得大多数程序员很 容易学习和使用 Java 2 面向对象 Java 语言提供类 接口和继承等原语 具备面向对象的抽象 继承 封装和多态四大属性 3 健壮且安全 Java 的强类型机制 异常处理 垃圾的自动收集等是 Java 程序健壮性的重要保证 Java 对通过网络下载的类具有一个安全防范机制 类 ClassLoader 如分配不同的名字空间以防替代本地的同名类 字节代码检查 14 并提供安全管理机制 类 SecurityManager 让 Java 应用设置安全哨兵 4 可移植 Java 程序 java 文件 通过 java 平台编译成字节码文件 class 文件 就可以在任何具有 java 平台的系统中执行 Java 的编译器是用 java 写的 java 的运行环境是用 c 写的 5 多线程 在 Java 中 线程是一种特殊的对象 它必须由 Thread 类或其 子孙类来创建 通常有两种方法来创建线程 其一 去实现 Runnable 借口 实 现里面的 run 方法 其二 从 Thread 类派生出子类并重写 run 方法 使用该子 类创建的对象即为线程 Java 语言支持多个线程的同时执行 并提供多线程之 间的同步机制 关键字为 synchronized 2 2 关键技术 2 2 1 AJAX 技术 在本超市管理系统中 同一 jsp 页面中可能有许多数据请求 如果采用传 统的提交表单的方式来发送请求 就会刷新页面 出现页面闪动 所以本系统 采用了 ajax 技术异步发送请求 来实现页面的无刷新交互数据 AJAX 是一种用于创建更好更快以及交互性更强的 Web 应用程序的技术 通过 AJAX 我们可以通过 XMLHttpRequest 对象来直接与服务器进行通信 Error Reference source not found 通过这个对象 我们可以在不重载页面的情况下与 Web 服务器进行数据交互 AJAX 在浏览器与 Web 服务器之间使用异步数据传 输 这样就可使网页从服务器请求少量的信息 而不是整个 HTML 页面 我们 甚至可以毫无察觉的发现 我们的页面数据悄无声息地改变了 而页面的排版 格式和表单设定都没有变化 AJAX 是一种独立于 Web 服务器软件的浏览器技术 并被所有的主流浏览 器支持 AJAX 使得 Web 应用既保留了 B S 结构的优点 又具有 C S 结构应用 的强大功能和用户感受 可以认为 Ajax 是 Web 标准和 Web 应用的可用性理论 的集大成者 它极大地改善了 Web 应用的可用性和用户的交互体验 2 2 1 JSON 技术 JSON JavaScript Object Notation 是一种轻量级的数据交换格式 它可以 15 将 对象转换为字符串 然后就在函数之间轻松地传递这个字符串 它也可以在 异步应用程序中将字符串从客户端传递给服务器端程序 JSON 字符串的结构 看上去有点类似哈希表 利用键值结构来表达 但它可以具有层次性 其实现 方式就是键值对的值本身也可以是一个完整的 JSON 字符串 因此它可以表示 比较复杂的对象 比如数组 树等 图 2 1 是一个 JSON 字符串 该字符串最 顶级的 key 为 workerlist 而它的值为一个数组 因此 workerlist 它代表了一个 数组 数组的每个元素是一个结构体 拥有属性 id 和 name 且相应有取值 图 2 1 示例 JSON 字符串 JSON 的优点是它的结构简单 可读性也不错 就字节数来说 相比 XML JSON 一般可以用更少的字节数表示相同的信息 电力信息智能交互系统的 Web 平台拥有较多需要 AJAX 支持的部分 比如 实时数据刷新和实时图表更新 另外 Android 终端也需要即时地访问不少服务 器的最新数据 我们在返回服务器数据时 其数据载体采用了 JSON 的方式 由于要频繁的进行数据交换 在带宽有限的情况下 选择 JSON 这种轻量级的 数据交换方式 是比较合适的 2 2 2 SESSION 和 JQuery 超市管理系统采用了 SESSION 会话机制 来对登录用户信息进行存储和管 理 使用 JQuery 来简化 ajax 请求格式 并且用 JQuery 对页面输入信息进行初 步的验证 16 第第 3 章章 需求分析和系统设计需求分析和系统设计 3 1 需求分析 3 1 1 功能需求 超市管理系统主要有收银员 采购员和系统管理员三大用户 不同用户身 份其操作权限不一样 所以他们的可操作的系统功能也不一样 1 商品管理 在商品管理模块可以新增商品条目 对已有商品信息进行修 改 删除商品条目 查询商品信息 查看信息详情 新增商品类型 2 库存管理 可以商品入库 退货出库 3 供应商管理 该模块可以新增供应商信息 可以修改已存在的供应商信 息 对供应商进行查询 4 采购和销售历史信息查询 5 系统管理 可以新增用户 设置用户的初始信息 设置用户权限 6 个人信息管理 用户可以对自己的基本信息进行查看和修改 采购员可以查看每天的采购信息 收银员可以销售商品 3 1 2 性能需求 考虑到商品数据信息的庞大 超市管理系统对性能需求 特别是涉及数据 库的作业 会很高 由于本文的主旨在于交互系统的设计 且所设计的原型系 统只处理模拟商品数据 因此本文没有在系统性能上做过多的研究 如何提高 系统性能这本身也是一个相当有难度和有意义的课题 这里就不展开了 3 1 3 用户体验需求 1 超市管理系统的收银员用户可以对商品进行销售 在销售界面可以通过 商品的条码对商品进行卖出 系统可以结算总价钱 在商品数量不够的情况下 系统会给出提示 销售成功后可以生成销售历史 收银员可以查询商品的基本 信息 也可查看和修改个人的基本信息 2 超市管理系统管理员可以操作出了销售之外的任何操作 拥有最高权限 17 3 超市管理系统中的采购员可以查看采购历史和采购任务 根据采购任务 上的信息去对应的供应商那进行采购 4 UI 界面要求简洁大方 风格统一 功能操作的响应时间短 功能导航 方便快捷 3 2 系统结构和流程图 3 2 1 系统的组成结构 超市管理系统主要是用浏览器作为一个客户端 用户通过浏览器来进入该系 统的操作 用户的操作请求通过网络交给服务器 服务器结合数据库对请求数 据进行计算和比较 再通过网络将结果返回给用户 超市管理系统的结构如图 3 1 所示 网络 WEB服务器 管理员 收银员或采购员 数据库 3 2 2 流程图 如图 3 2 所示 超市管理系统的用户通过系统的身份验证 获得不同的操 作权限的 web 界面 操作上面的功能 通过服务器对提交数据和数据库数据的 图 3 1 超市管理系统网络结构图 18 业务处理返回结果到系统界面 收银员 身份验证 服务端验证 身份 管理系统 交互界面 数据库 采购员 管理员 WEB端相关 功能服务 3 3 系统设计 3 3 1 数据库设计 根据系统的需求分析 总结出了一下几张数据表和表之间的关系如图 3 3 所示 表具体结构如表 3 1 到表 3 8 用户表 编号 名称 性别 密码 权限 电话 联系地址 邮箱 真实姓名 备注说明 权限表 权限 ID 名称 供应商表 编号 名称 联系地址 联系电话 联系人 备注 商品类型表 编号 名称 商品表 编号 名称 规格 类型 采购价 销售价 供应商 上限 下限 说明 操作人 库存表 商品 ID 数量 采购历史表 商品 ID 用户 ID 供应商 ID 数量 日期 销售历史表 商品 ID 用户 ID 供应商 ID 数量 日期 类型 图 3 2 超市管理系统流程图 19 user PKid user no name sex password power id phone address create time update time user desc email real name power PKid power type good type PKid no name create time good counts PKid good id count create date update date supplier PKid no name address phone s desc person good PKid no name spec type id buy sale good desc supplier id upper limit lower limit create time update time user id buy PKid good id supplier id user id count buy date sale PKid good id user id count sale date state supplier id 1 user 用户表 表 3 1 user 表结构 Field NameTypeKey Null Comment idbigintPKNOUser 表主键 user novarchar 20 NO用户编号 namevarchar 20 NO用户姓名 sexint 2 NO性别 1 男 2 女 passwordvarchar 20 NO密码 默认 111111 power idint 11 FKNO外键 与权限表 id 关联 phonevarchar 20 电话号码 addressvarchar 100 地址 emailvarchar 20 NO邮箱 real namevarchar 20 NO全名 图 3 3 超市管理系统表关系图 20 create timedate创建时间 update timedate更新时间 user descvarchar 100 备注 2 power 权限表 表 3 2 power 表结构 Field NameTypeKey Null Comment idint 11 PKNOpower表主键 power typevarchar 20 NO权限类型 3 supplier 供应商表 表 3 3 supplier表结构 Field NameTypeKey Null Comment idint 11 PKNOsupplier 表主键 novarchar 20 NO供应商编号 namevarchar 80 NO供应商名称 addressvarchar 100 联系地址 phonevarchar 20 联系电话 s descvarchar 200 备注 personvarchar 20 联系人 4 good type 商品类型表 表 3 4 good type表结构 Field NameTypeKey Null Comment idint 11 PKNOgood type 表主键 novarchar 20 NO商品类型编号 namevarchar 50 NO商品类型名称 create timedate创建时间 5 good 商品表 表 3 5 good表结构 Field NameTypeKey Null Comment idbigintPKNOgood 表主键 novarchar 20 NO商品条码 namevarchar 50 NO商品名称 specvarchar 50 商品规格 type idint 11 FKNO外键 与商品类型 id 关联 21 buyfloatNO进货价 salefloatNO销售价 supplier idbigintFKNO外键 与供应商 id 关联 upper limitbigintNO商品上限 lower limitbigintNO商品下限 create timedate创建时间 update timedate更新时间 user idbigint与 user 表 id 关联 6 good counts 库存表 表 3 6 good counts表结构 Field NameTypeKey Null Comment idbigintPKNOgood counts 表主键 good idbigintFKNO外键 与 good 表 id 关联 countbigintNO库存数量 create timedate创建时间 update datedate更新时间 7 buy 供应商表 表 3 7 buy表结构 Field NameTypeKey Null Comment idbigintPKNObuy 表主键 good idbigintFKNO外键 与 good 表 id 关联 supplier idbigintFKNO外键 与 supplier 表 id 关联 user idbigintFKNO外键 与 user 表 id 关联 countbigintNO购买数量 buy datedate采购日期 8 sale 供应商表 表 3 8 sale表结构 Field NameTypeKey Null Comment idbigintPKNOsale 表主键 good idbigintFKNO外键 与 good 表 id 关联 supplier idbigint外键 与 supplier 表 id 关联 user idbigintFKNO外键 与 user 表 id 关联 countbigintNO销售数量 22 sale datedate销售日期 stateint 10 NO1 销售 2 退货 3 3 2 功能模块设计 为了响应需求 原型系统的功能主要分为 7 大模块 分别是商品管理模块 库存管理模块 供应商管理模块 销售管理模块 采购管理模块 系统管理模 块和个人信息管理模块 各模块包含的主要功能如图 3 4 所示 商品管理模 块 超 市 管 理 系 统 库存管理模 块 供应商管理 模块 销售管理模 块 采购管理模 块 系统管理模 块 个人信息管 理模块 新增商品条目 商品信息查询 新增商品类型 商品入库 退货 新增供应商 供应商信息查询 前台收银 销售历史查询 采购单查询 采购历史查询 新增用户 查看 修改个人信息 图 3 4 超市管理系统功能设计图 23 第第 4 章章 超市管理系统的实现超市管理系统的实现 4 1 超市管理系统界面与功能简述 超市管理系统的 Web 平台采用 J2EE 实现 动态页面主要采用 JSP 技术实 现 采用 CSS DIV 的方式进行页面布局 通过 Struts2 String Hibernate 三大框 架来进行系统架构的设计和对数据流动的控制 下面简单介绍下原型系统 Web 平台 1 登录模块 登录模块的界面如图 4 1 所示 输入用户编号和密码后点击 登录按钮进行登录 如果验证通过 则进入超市管理系统主界面 2 主界面 主界面布局上采用 TopFrame LeftFrame MainFrame 的 HTML 框架式布局 根据登录用户的身份和权限 主界面的导航菜单会有所不 同 LeftFrame 页的导航条为菜单 而 MainFrame 则作为内容呈现主体 Web 平台的功能 导航菜单的设计主要参考 3 3 2 章节的功能设计部分 当收银员 采购员和管理员登录后主界面菜单如图 4 2 所示 图 4 1 登录 24 3 商品管理模块 如图 4 3 至 4 7 所示 商品管理模块包括商品基本信息 的增删改查和商品类型的新增 该模块只能是管理员可以操作 图 4 2 菜单 图 4 3 新增商品条目 图 4 4 新增商品类型 25 4 库存管理模块 该模块可以商品入库和出库退货 如图 4 8 至 4 9 所示 图 4 5 查询商品信息 图 4 6 修改商品信息 图 4 7 查看商品详情 26 5 供应商管理模块 该模块可以对供应商进行增删改查 如图 4 10 至 4 12 所示 图 4 8 商品入库 图 4 9 退货 27 图 4 10 新增供应商 图 4 11 供应商信息查询 图 4 12 修改供应商信息 28 6 销售管理模块 该模块可以查询销售历史 收银员登录可以操作收银台 并且可以查询商品的基本信息 如图 4 13 至 4 15 所示 收银台可以将每一件商 品加入账单 最后再结算 7 采购管理模块 该模块可以查询采购历史和当前的采购任务 如图 4 16 图 4 13 收银台 图 4 14 查询商品库存 图 4 15 查询销售历史 29 至 4 17 所示 8 系统管理模块 系统管理主要就是可以新增用户 并为其分配权限如图 4 18 所示 图 4 16 查询采购历史 图 4 17 查询采购任务 30 9 个人信息管理模块 该模块提供了用户查看个人的基本信息和进行修改 如图 4 19 4 2 系统代码结构 超市管理系统采用 J2EE 实现 并采用 Struts2 框架来控制请求的传递给哪 个 Action 处理 再通过 Spring 控制 Action 和 Service 的调用 对数据库的访问 采用的是 Hibernate 框架 本系统只有一个 String 的 ApplicationCountext xml 配 置文件 其他所有配置都是采用注解的方式进行配置 Web 平台的代码结构如 图 4 20 所示 工程所有的 Java 类位于 shop 及它的子包下 action 包中的类是各种业务逻辑的 Action 所对应的类 这些 Action 通过注 解的方式进行了配置 具体实现方式将在 4 3 节叙述 beans 包中的类是对实体的封装类 比如用户类 User 等 本系统使用 ORM 模板 而是将所有对数据库的增 删 改 查操作进行 了封装 有一个公共的 DAO 接口实现了表中最简单的数据操作 common 包中是一些放置常量的类 service 包中包含了对每个模块的业务进行了封装 方便 Action 调用 util 包中包含了一些工具类 图 4 18 新增用户 图 4 19 修改 查看用户信息 31 4 3 网站关键技术实现 1 权限控制 超市管理系统的权限分为三种 第一种是收银员权限 第二种是采购员权 限 第三种是管理员权限 权限不同每个人可操作的系统功能也不同 本系统 在数据库设计时就定义了一个权限表 不同权限的用户都具有自己的唯一标注 当用户登录系统时 系统先对用户最基本的身份验证 并把登录用户的基本信 息存到 Session 的 loginUser 中 JSP 通过 Struts2 自带的 taglib 获取到 loginUser 的标注 更具不同的标注对给出的主页面进行不同的隐藏和显示 2 数据交互 超市管理系统对数据库基础的增删改查比较频繁 而且每张表都有基本的 增删改查操作 所以本系统对简单的单表操作进行了封装 超市管理系统对 DAO 层封装使用了泛型 包含常用的增删改查和分页操作 DAO 层封装借口 的实现类 BaseDaoSupport继承了 HibernateDaoSupport 类可以获取事务来进 行对数据库的操作 BaseDaoSupport使用 GenericsUtils 工具类封装的 getSuperClassGenricType this class 方法通过反射机制来获取实体类 再用 getSimpleName 方法得到实体类的名字 再到具体的增删改查方法内进行 sql 图 4 19 超市管理系统包结构 32 字符串拼接 Service 包下的业务实现类中只要继承 BaseDaoSupport类 并 定义具体的 T 类型 就有了最基础的一些数据库操作 超市管理系统中有很多数据提交时需要不刷新页面的动态提交 本系统应 用 AJAX JSON 技术 技术介绍请参考 2 2 章节 来实现 为了加强用户体验 原型系统使用了 JQuery 等优秀的 JavaScript 脚本库 下面以新增商品为例对动 态发送请求 实现页面无刷新尽心阐述 当用户在新增商品条目页面填写完基本信息
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 插件机购销合同5篇
- 合水县2025甘肃庆阳市合水县事业单位引进高层次急需紧缺人才22人(第三批)笔试历年参考题库附带答案详解
- 丰都县2025二季度重庆丰都事业单位考核招聘12人笔试历年参考题库附带答案详解
- 2025陕西金融资产管理股份有限公司员工招聘(26人)笔试参考题库附带答案详解
- 2025辽宁省能源控股集团所属抚矿集团招聘76人笔试参考题库附带答案详解
- 2025江苏南京六合科技创业投资发展有限公司招聘10人笔试参考题库附带答案详解
- 2025广东湛江市麻章区城乡国有资产经营有限公司招聘5人笔试参考题库附带答案详解
- 2025年潍坊交通发展集团有限公司公开招聘(19人)笔试参考题库附带答案详解
- 2025年江西井冈山市市场监督管理局面向社会公开招聘4人笔试参考题库附带答案详解
- 2025年国网湖南省电力有限公司高校毕业生招聘(第二批)笔试参考题库附带答案详解
- 超早期脑梗死的CT影像表现及诊断课件
- 拉西地平原料制药课程设计说明书
- 小学体育-小学二年级《单双脚跳》教学设计学情分析教材分析课后反思
- 居室环境的清洁与消毒
- ××领导班子及成员分析研判报告
- GB/T 9124.1-2019钢制管法兰第1部分:PN系列
- GB/T 2518-2008连续热镀锌钢板及钢带
- Frenchay构音障碍评定
- 教育学原理课后答案主编项贤明
- 建筑装饰施工技术-轻质隔墙工程施工课件(-)
- 语言领域核心经验《学前儿童语言学习与发展核心经验》
评论
0/150
提交评论