Spring Boot框架:电商系统的技术展望

4 系统设计

网上商城系统的设计方案比如功能框架的设计,比如数据库的设计的好坏也就决定了该系统在开发层面是否高效,以及在系统维护层面是否容易维护和升级,因为在系统实现阶段是需要考虑用户的所有需求,要是在设计阶段没有经过全方位考虑,那么系统实现的部分也就无从下手,所以系统设计部分也是至关重要的一个环节,只有根据用户需求进行细致全面的考虑,才有希望开发出功能健全稳定的程序软件。

4.1 系统概要设计

本次拟开发的系统为了节约开发成本,也为了后期在维护和升级上的便利性,打算通过浏览器来实现系统功能界面的展示,让程序软件的主要事务集中在后台的服务器端处理,前端部分只用处理少量的事务逻辑。下面使用一张图(如图4.1所示)来说明程序的工作原理。

图4.1 程序工作的原理图

4.2 系统功能结构设计

在分析并得出使用者对程序的功能要求时,就可以进行程序设计了。如图4.2展示的就是管理员功能结构图。

图4.2 系统功能结构图

4.3 数据库设计

程序功能操作不管是添加,修改,还是删除等功能产生的数据都是经由数据库进行数据保存和更新的,所以一个数据库设计的好坏也是程序是否好坏的判定标准,因为程序的成功,有一半的功劳都是靠数据库的优秀设计。数据库一旦设计得良好是可以减轻开发人员的开发负担的。

4.3.1 数据库E-R图设计

这个部分的设计需要使用到E-R图绘制工具,常用的工具就是Visio工具来绘制E-R模型图,这款工具不仅可以快速创建需要的E-R模型图,而且该工具提供的操作界面很简单,可以短时间内修改绘图界面的图形或者是文字的属性。在绘制E-R模型图时,要分清楚各个图形代表的含义,以免绘制出错,E-R模型图由长方形(实体),椭圆形(属性),菱形(关系)这三部分图形符号组成,绘制期间要区分开来,用准确的图形符号代表相应的数据元素。

各个实体之间的联系用下图的E-R图表示。绘制的系统E-R图见图4.8。

图4.8 系统E-R图

4.3.2 数据库表结构设计

数据库系统一旦选定之后,需要根据程序要求在数据库中建立数据库文件,并在已经完成创建的数据库文件里面,为程序运行中产生的数据建立对应的数据表格,数据表结构设计就是对创建的数据表格进行字段设计,字段长度设计,字段类型设计等,当数据表格合理设计完成之后,才能正常存储相关程序运行产生的数据信息。

表4.1地址表

序号 列名 数据类型 说明 允许空

1 Id Int id 否

2 addtime Date 创建时间 是

3 userid Integer 用户id 是

4 address String 地址 是

5 name String 收货人 是

6 phone String 电话 是

7 isdefault String 是否默认地址[是/否] 是

表4.2购物车表表

序号 列名 数据类型 说明 允许空

1 Id Int id 否

8 addtime Date 创建时间 是

9 tablename String 商品表名 是

10 userid Integer 用户id 是

11 goodid Integer 商品id 是

12 goodname String 商品名称 是

13 picture String 图片 是

14 buynumber Integer 购买数量 是

15 price float 单价 是

16 discountprice float 会员价 是

表4.3客服聊天表表

序号 列名 数据类型 说明 允许空

1 Id Int id 否

17 addtime Date 创建时间 是

18 userid Integer 用户id 是

19 adminid Integer 管理员id 是

20 ask String 提问 是

21 reply String 回复 是

22 isreply Integer 是否回复 是

表4.4商品信息评论表表

序号 列名 数据类型 说明 允许空

1 Id Int id 否

23 addtime Date 创建时间 是

24 refid Integer 关联表id 是

25 userid Integer 用户id 是

26 content String 评论内容 是

27 reply String 回复内容 是

表4.5商品资讯表

序号 列名 数据类型 说明 允许空

1 Id Int id 否

28 addtime Date 创建时间 是

29 title String 标题 是

30 introduction String 简介 是

31 picture String 图片 是

32 content String 内容 是

表4.6订单表

序号 列名 数据类型 说明 允许空

1 Id Int id 否

33 addtime Date 创建时间 是

34 orderid String 订单编号 是

35 tablename String 商品表名 是

36 userid Integer 用户id 是

37 goodid Integer 商品id 是

38 goodname String 商品名称 是

39 picture String 商品图片 是

40 buynumber Integer 购买数量 是

41 price float 价格/积分 是

42 discountprice float 折扣价格 是

43 total float 总价格/总积分 是

44 discounttotal float 折扣总价格 是

45 type Integer 支付类型 是

46 status String 状态 是

47 address String 地址 是

表4.7商品分类表

序号 列名 数据类型 说明 允许空

1 Id Int id 否

48 addtime Date 创建时间 是

49 shangpinfenlei String 商品分类 是

表4.8商品评价表

序号 列名 数据类型 说明 允许空

1 Id Int id 否

50 addtime Date 创建时间 是

51 dingdanbianhao String 订单编号 是

52 shangpinmingcheng String 商品名称 是

53 shangpinfenlei String 商品分类 是

54 pinpai String 品牌 是

55 pingfen String 评分 是

56 pingjianeirong String 评价内容 是

57 tianjiatupian String 添加图片 是

58 pingjiariqi date 评价日期 是

59 yonghuming String 用户名 是

60 lianxidianhua String 联系电话 是

61 sfsh String 是否审核 是

62 shhf String 审核回复 是

表4.9商品信息表

序号 列名 数据类型 说明 允许空

1 Id Int id 否

63 addtime Date 创建时间 是

64 shangpinmingcheng String 商品名称 是

65 shangpinfenlei String 商品分类 是

66 tupian String 图片 是

67 biaoqian String 标签 是

68 pinpai String 品牌 是

69 shangpinxiangqing String 商品详情 是

70 clicktime datetime 最近点击时间 是

71 clicknum Integer 点击次数 是

72 price float 价格 是

表4.10收藏表表

序号 列名 数据类型 说明 允许空

1 Id Int id 否

73 addtime Date 创建时间 是

74 userid Integer 用户id 是

75 refid Integer 收藏id 是

76 tablename String 表名 是

77 name String 收藏名称 是

78 picture String 收藏图片 是

表4.11用户表

序号 列名 数据类型 说明 允许空

1 Id Int id 否

79 addtime Date 创建时间 是

80 yonghuming String 用户名 是

81 mima String 密码 是

82 xingming String 姓名 是

83 touxiang String 头像 是

84 xingbie String 性别 是

85 lianxidianhua String 联系电话 是

86 money float 余额 是

表4.12用户表表

序号 列名 数据类型 说明 允许空

1 Id Int id 否

87 role String 角色 是

88 addtime Date 新增时间 是

结 论

通过对网上商城系统的开发,让我深刻明白开发一个程序软件需要经历的流程,当确定要开发一个网上商城系统的程序时,我在开发期间,对其功能进行合理的需求分析,然后才是程序软件的功能的框架设计,数据库的实体与数据表设计,程序软件的功能详细界面实现,以及程序的功能测试等进行全方位的细致考虑,虽然在此过程中,各个环节都遇到了大大小小的困难,但是通过对这些问题进行反复的分析,深入的思考,借助各种相关文献资料提供的方法与解决思路成功解决面临的各个问题,最后成功的让我开发的网上商城系统得以正常运行。

网上商城系统在功能上面是基本可以满足用户对系统的操作,但是这个程序软件也有许多方面是不足的,因此,在下一个时间阶段,有几点需要改进的地方需要提出来,它们分别是:

(1)操作页面可以满足用户简易操作的要求,但是在页面多样化设计层面上需要把一些比较丰富的设计结构考虑进来。

(2)程序软件的总体安全性能需要优化,例如程序的退出安全性,以及程序的并发性等问题都需要进行安全性升级,让开发的网上商城系统与现实中的相关网站更贴合。

(3)需要对程序的数据结构方面,程序的代码方面等进行优化,让运行起来的程序可以保持稳定运行,也让程序能够保证短时间内处理相关事务,节省处理事务的时间,提高事务处理的效率,同时对服务器上资源占用的比例进行降低。

网上商城系统的开发一方面是对自身专业知识技能进行最终考核,另一方面也是让自己学会独立解决程序开发过程中所遇到的问题,掌握将理论知识运用于程序开发实践的方法。网上商城系统的开发最终目标就是让系统更具人性化,同时在逻辑设计上,让系统能够更加的严谨。

致 谢

大学期间的学习时光对于我来说是美好而短暂的,在这期间我也接触了许多可爱的大学同学们,以及兢兢业业教学的老师们,在我的毕业论文即将完成之际,我想对那些曾经给予我支持,帮助,还有鼓励的同学和老师以及家人们表达我内心的无比感激之情。

首先,感谢给予我论文指导的指导老师,从开题报告,任务书,论文大纲的编写与系统的功能框架设计,到最终的毕业论文,都是指导老师全程参与的悉心指导和帮忙,才能够让我的毕业论文可以符合学院要求编写完成。我的指导老师一丝不苟的教学精神以及在学术上的严谨作风,这些优点是值得我不断去努力学习的。

其次,感谢大学同学的陪伴与帮助,在我独立编写毕业论文期间,大学同学的鼓励与耐心的帮助使得我少走很多弯路,节省毕业论文的编写时间,也让我有更多精力去完善我开发的系统。

最后,感谢我最亲密的家人带给我的包容和关爱,我能够安心学习也是来源于家人们对我的无微不至的照顾,这样我才可以顺顺利利完成我的大学学业。

毕业倒计时之际,希望在今后的工作中,在今后的生活中,我会一直谨记老师们带给我的孜孜不倦的教诲,并通过不懈的努力和追求来改变自己,以此报答那些曾支持过以及帮助过我的人!

参考文献

[1]宁昭铱,陈静,张立斌.一个网上商城系统平台的设计[J].科技经济导刊,2017(01):32+25.

[2]李鑫.浅谈信息化网上商城系统的设计与实现[J].民营科技,2016(11):74.

[3]宋丽娜.基于JSP的Web开发中文乱码问题的研究与解决[J].电子技术,2015,42(11):5-7.

[4]汪君宇.基于JSP的Web应用软件开发技术分析[J].科技创新与应用,2018(16):158-160.

[5]赵钢.JSP Servlet+EJB的Web模式应用研究[J].电子设计工程,2016,21(13):47-49.

[6]肖英.解决JSP/Servlet开发中的中文乱码问题[J].科技传播,2017,(1)11-25.

[7]朱钧.基于角色的jsp通用权限系统设计与实现[D].山东大学,2014.

[8]康牧.JSP动态网站开发实用教程[M].清华大学出版社,2014.

[9]王建国.数据库设计在网站开发中的应用[J].山东农业工程学院学报,2017,34(04):158-159+164.

[10]张知青.基于关系数据库的查询方法及优化技术分析[J].煤炭技术,2015,31(05):218-220.

[11]陈志誉.Java工具及其调度方法研究[D].华南理工大学,2018.

[12]张孝祥,徐明华.JAVA基础与案例开发详解[M].清华大学出版社,2014.

[13]刘亚宾.精通Eclipse--JAVA技术大系[M].电子工业出版社,2015.

[14]曾志明.网站开发技术的比较研究[J].电脑知识与技术,2015,6(05):1075-1078.

[15]卫红春.信息系统分析与设计[M].北京:清华大学出版社,2014.

[16]于万波.网站开发与应用案例教程[M].清华大学出版社,2013.

[17]黎连业,王华,李淑春.软件测试与测试技术[M].清华大学出版社,2014.

[18]Xin-hua YOU. Brief Discuss the Application of Object-oriented in Java Language Programming Course[A]. Advanced Science and Industry Research Center.Proceedings of 2018 3rd International Conference on Automation, Mechanical and Electrical Engineering (AMEE 2018)[C].Advanced Science and Industry Research Center:Science and Engineering Research Center,2018:5.

[19]Menglin Liu. Design and Research of Batch Query System Based on Java[A]. Research Institute of Management Science and Industrial Engineering.Proceedings of 2018 4th World Conference on Control, Electronics and Computer Engineering (WCCECE 2018)[C].Research Institute of Management Science and Industrial Engineering:计算机科学与电子技术国际学会(Computer Science and Electronic Technology International Society),2018:5.

相关推荐
ashane1314几秒前
Java list
java·windows·list
袁庭新7 分钟前
Cannal实现MySQL主从同步环境搭建
java·数据库·mysql·计算机·java程序员·袁庭新
无尽的大道8 分钟前
深入理解 Java 阻塞队列:使用场景、原理与性能优化
java·开发语言·性能优化
何遇mirror18 分钟前
云原生基础-云计算概览
后端·云原生·云计算
岁岁岁平安25 分钟前
springboot实战(15)(注解@JsonFormat(pattern=“?“)、@JsonIgnore)
java·spring boot·后端·idea
Oak Zhang26 分钟前
TheadLocal出现的内存泄漏具体泄漏的是什么?弱引用在里面有什么作用?什么情景什么问题?
java·系统安全
数据小小爬虫28 分钟前
如何利用Java爬虫获得1688店铺详情
java·开发语言
天若有情67329 分钟前
c++框架设计展示---提高开发效率!
java·c++·算法
Reese_Cool1 小时前
【数据结构与算法】排序
java·c语言·开发语言·数据结构·c++·算法·排序算法
颜淡慕潇1 小时前
【K8S系列】kubectl describe pod显示ImagePullBackOff,如何进一步排查?
后端·云原生·容器·kubernetes