1 绪论
超市管理系统利用当下成熟美满的SSM框架,利用跨平台的可开发大型商业网站的Java语言,以及最受接待的RDBMS应用软件之一的MySQL数据库进行程序开发。实现了用户在线选择试题并完成答题,在线查看考核分数。管理员管理字典管理、公告管理、供应商信息管理、会员管理、进货管理、商品管理、商品贩卖管理、退货管理、员工管理、管理员管理等功能。
2 技术先容
2.1 SSM框架
本课题程序开发利用到的框架技术,英文名称缩写是SSM,在JavaWeb开发中利用的流行框架有SSH、SSM、SpringMVC等,作为一个课题程序采用SSH框架也可以,SSM框架也可以,SpringMVC也可以。SSH框架是属于重量级别的框架,配置繁琐,不够机动,修改程序必要修改很多多少个文件,而且运行起来也占用内存较高,CPU利用率相对也高,SpringMVC是Spring开发的一套MVC架构,更机动更好用,SSM框架取中心值,既没有SSH痴肥,也没有SpringMVC简化,属于中心级别的,在配置过程和利用过程中更能编写和理解。MyBatis框架取代Hibernate框架是由于它更机动,不必要完全在框架里操作,它在数据操作上可以写出更机动的代码,它的性能也比Hibernate框架更稳定。总的来说,利用SSM框架是通过综合考虑而利用的,网上有很多的利用教程和心得体会,而且SSM又是这么的流行,用SSM框架开发是顺其天然的。
2.2 B/S结构
在早期,一些利用HTML语言编写的文件,再集合一些其它资源文件就可以组成一个最简朴的Web程序,相识了Web程序也必要相识Web站点,它们之间的关系就是一个或者多个Web程序可以放在Internet上的一个Web站点(Web服务器)中进行利用。可以说Web应用程序的开发也带动了B/S这种网络结构模式的兴起。B是Brower(浏览器)的首字母,S是Server(服务器)的首字母,两个首字母进行组合就成了网络结构模式的简称B/S。由于这种结构模式通过安装在客户端的浏览器进行服务器的访问,可以把程序的焦点功能安排在服务器中进行处理,给程序的开发,后期利用和维护省去了许多工作。图2.1展示的就是利用这种架构开发的程序的工作原理。
图2.1 B/S架构的工作原理图
2.3 MySQL数据库
开发的程序面向用户的只是程序的功能界面,让用户操作程序界面的各个功能,那么很多人就会问,用户利用程序功能生成的数据信息放在那里的?这个就必要涉及到数据库的知识了,一般来说,程序开发通常就会对常用数据存储工具的特点进行分析比对,好比MySQL数据库的特点与上风,Access数据库的特点与上风,Sqlserver数据库的特点与上风等,终极看哪个数据库与必要开发的程序比力匹配,也符合程序功能运行必要的数据存储要求,好比,必要开发商业级别的程序,存储的数据对数据库要求较高,可以选用Oracle,如果只是比力简朴的程序,对数据存储没有过多要求,可以选用微软旗下的Access,当开发程序要求数据库占用空间小,并能满足程序数据存储要求时,就可以考虑Oracle公司从瑞典MySQL AB公司在很早之前就收购过一个关系型数据库,它是现在的MySQL数据库。在数据库工具里面它是最受认可的此中一个应用软件。必要说明的信息就是,本程序的开发就运用到了此数据库。它将程序数据通过利用不同的数据表格进行保存,在增加了程序数据的存储速率的时间,也进步了数据库的机动性。 图2.2展示的就是MySQL的架构图。
图2.2 MySQL数据库架构图
3 系统分析
3.1 操作流程分析
程序上交给用户进行利用时,必要提供程序的操作流程图(如图3.1所示),这样便于用户容易理解程序的具体工作步调,现现在程序的操作流程都有一个大致的标准,即先通过登录页面提交登录数据,通过程序验证精确之后,用户才能在程序功能操作区页面操尴尬刁难应的功能。
图3.1 程序操作流程图
3.2 登录流程分析
在这个部分,必要对程序的登录功能模块的运行流程,进行单独说明。程序设置登录模块也是为了安全起见,让用户利用放心,登录模块重要就是让用户提交登录信息,程序进行数据验证,验证通过的用户才能够乐成登录程序。
3.3 信息添加流程分析
程序的添加功能就是提供给操作者录入信息的功能,不管是涉及到用户信息添加,还是其它功能模块涉及到的信息添加,程序的信息添加流程(如图3.2所示)都是同等的。程序都是先对操作者录入的数据进行判断,这个判断规则是一段提前编写完成的程序代码,当程序判断数据符合要求时,才会把操作者录入的数据登记在数据表里面,好比添加的用户信息,就会把新添加的用户信息写入用户信息的数据表文件里面。
图3.2 信息添加流程图
3.4 信息删除流程分析
当从程序里面删除某种无效数据时,遵照程序的信息删除流程(如图3.3所示),先要选中操作者必要删除的数据,程序为了预防操作者误删信息,也会进行提示,当操作者真精确定要删选中的信息时,该信息就会从数据库中被永久删除。
图3.3 信息删除流程图
3.5 系统功能分析
程序功能必要花费肯定时间进行分析与计划,必要从大量的参考资料或者是社会上同种类型的程序中吸收对此程序开发有效的知识,可以将其它同类型程序中的合理功能部分规划到此程序里面,另外程序功能也必要针对用户的需求进行分析与计划。
4 系统计划
4.1 系统概要计划
本次拟开发的系统为了节约开发本钱,也为了后期在维护和升级上的便利性,打算通过浏览器来实现系统功能界面的展示,让程序软件的重要事件集中在后台的服务器端处理,前端部分只用处理少量的事件逻辑。下面利用一张图(如图4.1所示)来说明程序的工作原理。
图4.1 程序工作的原理图
4.2 系统功能结构计划
在分析并得出利用者对程序的功能要求时,就可以进行程序计划了。如图4.2展示的就是管理员功能结构图,管理员在后台重要管理字典管理、公告管理、供应商信息管理、会员管理、进货管理、商品管理、商品贩卖管理、退货管理、员工管理、管理员管理等。
图4.2 管理员功能结构图
4.3 数据库计划
开发一个系统也必要提前计划数据库。这里的数据库是相关数据的集合,存储在一起的这些数据也是按照肯定的构造方式进行的。目前,数据库能够服务于多种应用程序,则是源于它存储方式最佳,具备数据冗余率低的上风。虽然数据库为程序提供信息存储服务,但它与程序之间也可以保持较高的独立性。
首先就是绘制E-R图,这在前几篇文章中也有解释。
这部分内容必要借助数据库关系图来完成,也必要利用专门绘制数据库关系图的工具,好比Visio工具就可以计划E-R图(数据库关系图)。计划数据库,也必要按照计划的流程进行,首先还是要根据需求完成实体的确定,分析实体具有的特征,还有对实体间的关联关系进行确定。最后才是利用E-R模型的表现方法,绘制本系统的E-R图。不管是利用亿图软件,还是Visio工具,对于E-R模型的表现符号都一样,通常矩形代表实体,实体间存在的关系用菱形符号表现,实体的属性也就是实体的特征用符号椭圆表现。最后利用直线将矩形,菱形和椭圆等符号连接起来。接下来就开始对本系统的E-R图进行绘制。
这里展示样例:
图4.3 商品E-R图
图4.4 公告E-R图
除此之外各人可以思考思考,还必要哪些E-R图呢?
答:退货、会员、员工、供应商信息、商品贩卖、进货……
数据库系统一旦选定之后,必要根据程序要求在数据库中建立数据库文件,并在已经完成创建的数据库文件里面,为程序运行中产生的数据建立对应的数据表格,数据表结构计划就是对创建的数据表格进行字段计划,字段长度计划,字段类型计划等,当数据表格合理计划完成之后,才能正常存储相关程序运行产生的数据信息。
在搭建完E-R图后就是要进行数据库表的计划了,字典表是必不可少的。
表4.1 字典表
序号
| 列名
| 数据类型
| 说明
| 允许空
| 1
| Id
| Int
| id
| 否
| 2
| dic_code
| String
| 字段
| 是
| 3
| dic_name
| String
| 字段名
| 是
| 4
| code_index
| Integer
| 编码
| 是
| 5
| index_name
| String
| 编码名字
| 是
| 6
| super_id
| Integer
| 父字段id
| 是
| 7
| beizhu
| String
| 备注
| 是
| 8
| create_time
| Date
| 创建时间
| 是
| 表4.2 公告表
序号
| 列名
| 数据类型
| 说明
| 允许空
| 1
| Id
| Int
| id
| 否
| 2
| gonggao_name
| String
| 公告名称
| 是
| 3
| gonggao_photo
| String
| 公告图片
| 是
| 4
| gonggao_types
| Integer
| 公告类型
| 是
| 5
| insert_time
| Date
| 公告发布时间
| 是
| 6
| gonggao_content
| String
| 公告详情
| 是
| 7
| create_time
| Date
| 创建时间
| 是
| 剩余的数据库表请各人尝试完成。
5 系统实现
系统实现部分就是将系统分析,系统计划部分的内容通过编码进行功能实现,以一个现实应用系统的形式展示系统分析与系统计划的效果。前面提到的系统分析,系统计划最重要还是进行功能,系统操作逻辑的计划,也包括了存储数据的数据库方面的计划等内容,系统实现就是一个终极的实施阶段,将前面的计划效果进行物理转化,终极出具可以运用于现实的软件系统。
- <mapper namespace="com.gx.dao.AttributeDao">
- <resultMap id="BaseResultMap" type="com.gx.po.AttributePo">
- <!--
- WARNING - @mbggenerated
- This element is automatically generated by MyBatis Generator, do not modify.
- This element was generated on Sun Oct 16 19:18:30 CST 2016.
- -->
- <constructor>
- <idArg column="id" jdbcType="INTEGER" javaType="java.lang.Integer"/>
- <arg column="attributeName" jdbcType="VARCHAR" javaType="java.lang.String"/>
- </constructor>
- </resultMap>
- <!-- 查看商品类别 -->
- <select id="selectCommodityType" resultType="com.gx.po.AttributePo"> SELECT a.*,b.id AS far_id,b.attributeDetailsName FROM attribute a INNER JOIN attributedetails b ON a.id =b.attributeID WHERE a.id=3 </select>
- <!-- 查看计量单位 -->
- <select id="selectUOM" resultType="com.gx.po.AttributePo"> SELECT a.*,b.id AS far_id,b.attributeDetailsName FROM attribute a INNER JOIN attributedetails b ON a.id =b.attributeID WHERE a.id=15 </select>
- <!-- 新增商品类别 -->
- <insert id="insertAll"> INSERT INTO attributedetails (attributeID,attributeDetailsName) values (#{newid,jdbcType=INTEGER}, #{newname,jdbcType=VARCHAR}) </insert>
- <!-- 删除商品类别 -->
- <delete id="deleteById" parameterType="java.lang.Integer"> DELETE FROM attributedetails WHERE id = #{id,jdbcType=INTEGER} </delete>
- </mapper>
复制代码 如图5.1显示的就是商品列表页面,此页面提供给管理员的功能有:查看商品、新增商品、修改商品、删除商品等。

图5.1 商品列表页面
公告信息管理页面提供的功能操作有:新增公告,修改公告,删除公告操作。下图就是公告信息管理页面。
图5.2 公告信息管理页面
公告类型管理页面显示所有公告类型,在此页面既可以让管理员添加新的公告信息类型,也能对已有的公告类型信息执行编辑更新,失效的公告类型信息也能让管理员快速删除。下图就是公告类型管理页面。
图5.3 公告类型列表页面
6 系统测试
要保障程序安全,首先就要从入门门槛抓起,以是程序的登录模块也是很紧张的程序入门门槛,务必要保证此功能可以安全运行利用。此次对程序登录模块测试选择管理员脚色进行测试(如表6.1所示)。
表6.1 登录功能测试数据表
登录账号
| 登录密码
| 操作人
| 最闭幕果
| abc
| abc
| 管理员
| 登录进入程序
| 123
| abc
| 管理员
| 弹堕落误登录提示
| abc
| 123
| 管理员
| 弹堕落误登录提示
| 超市管理系统必要管理员添加公告类型信息,公告类型名称和公告类型编码都是程序设置的必填数据,而且添加的公告类型编码也不能够是数据库里面的存在的数据。对添加公告类型功能测试时,测试数据在下表展示。
表6.2 添加公告类型功能测试数据表
公告类型编码
| 公告类型名称
| 反馈效果
| 3
|
| 失败
|
| 公告类型3
| 失败
| 3
| 公告类型3
| 乐成
| 总结
程序颠末了上述的测试环节,可以得出的测试结论有:
第一点,可以确定开发出来的超市管理系统是符合同类型系统的要求;
第二点,用户要求超市管理系统必要具备的功能都已开发完成并能够正常利用;
第三点,超市管理系统界面简洁雅观,操作流程清楚明白;
第四点,超市管理系统的安全性,以及运行性能符合开发要求。
至此,超市管理系统可以确保所有功能能够按照预期目标进行运行,可以正式投入生活中运行利用!
更详细的内容接待共同交换学习。包含该电商平台的具体文字说明和程序。
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |