SpringBoot 架构下的在线家具商城:规划与实践之路
第1章 绪论
1.1选题动因
当前的网络技术,软件技术等都具备成熟的理论基础,市场上也出现各种技术开发的软件,这些软件都被用于各个领域,包括生活和工作的领域。随着电脑和笔记本的广泛运用,以及各种计算机硬件的完善和升级,市面上的电脑和笔记本的性能都得到提升,可以支持的软件也逐渐增多,因此,在计算机上安装软件来发挥其高效地信息处理的作用,则很受人们的青睐。对于公交信息来讲,通过手工形式处理,在面对庞大的信息数量时,就显得不适宜了,首先需要花费的时间比较多,其次数据出错率比较高,而且对错误的数据进行更改也比较困难,最后,检索数据费事费力。因此,为了解决上述问题,有必要建立在线家具商城,来规范公交信息管理流程,让管理工作可以系统化和程序化,同时,在线家具商城的有效运用可以帮助管理人员准确快速地处理信息。
1.2目的和意义
在线家具商城可以对公交信息进行集中管理,可以真正避免传统管理的缺陷。在线家具商城是一款运用软件开发技术设计实现的应用系统,在信息处理上可以达到快速的目的,不管是针对数据添加,数据维护和统计,以及数据查询等处理要求,在线家具商城都可以轻松应对。所以,在线家具商城的运用是让公交信息管理升级的最好方式。它可以实现信息处理的便利化要求,还可以规范信息处理的流程,让事务处理成为管理人员手中的一件简单事,而不是之前手工处理时的困难事。尽管在线家具商城具备较完善的功能,但是也需要管理人员利用闲暇时间提升自身素质以及个人能力,在操作在线家具商城时可以最大化运用在线家具商城提供的功能,让系统在满足高效率处理数据的同时,也能始终稳定运行,还可以确保数据的可靠性与数据处理的质量。
1.3论文结构安排
本文总共分为6个章节,每个章节都对本系统描述了不同的内容。接下来就对本文的研究内容进行阐述。
第1章:这个章节是论文的绪论部分。从选题的背景和意义的角度阐述即将开发的系统。
第2章:这个章节是技术介绍部分。从本系统需要运用的技术知识的角度阐述系统。
第3章:这个章节是系统分析部分。从分析系统可行性,分析系统功能和性能等角度阐述系统。
第4章:这个章节是系统设计部分。从系统功能结构的角度和数据库设计的角度阐述系统。
第5章:这个章节是系统实现部分。从系统功能模块运行效果的角度阐述系统。
第6章:这个章节是系统测试部分。从测试系统功能,系统测试方法的角度阐述系统。
第4章 系统设计
市面上设计比较好的系统都有一个共同特征,就是主题鲜明突出。通过对页面简洁清晰的布局,让页面的内容,包括文字语言,或者视频图片等元素可以清晰表达出系统的主题。让来访用户无需花费过多精力和时间找寻需要的内容。
4.1界面设计原则
一般来说,大部分用户使用系统,有些是想从系统中获取需要的信息,有些则是使用系统提供的服务。所以,为了改善用户体验,提高系统的使用率,在对系统界面设计时,需要按照下面的原则进行。
第一点,对用户进行分析,了解用户使用系统的目的,以及使用系统的方式,考虑大部分用户的阅读习惯,设计Z字形或F型结构可以方便用户获取信息。
第二点:设计有效的导航,这个包括每个页面上都有导航条的显示,有时也可以在页面的底部设计导航条,当用户进入具体页面时,要设计相应的位置提示,在页面中比较特殊的位置,需要设计返回链接,可以返回上个页面,也可以返回首页等。
第三点:对整个系统要运用统一的设计方案,包括色彩方案的一致性,页面模板的相似性等,对相同操作和专业术语的描述在整个系统中也应该保持一致。
第四点:设计的界面要保证传达的内容清晰准确。要避免在同一个页面设计非常多的内容,另外可以准确对系统内容进行分类,把页面中用户视觉集中的位置,用来显示重要信息。
作为初学者,并没有那么多的设计经验,但是可以运用上面提到的界面设计原则设计出比较好的系统,可以让用户产生良好的使用体验。
4.2功能结构设计
为了让系统的编码可以顺利进行,特意对本系统功能进行细分设计,设计的系统功能结构见下图。
图4.1 系统功能结构图
4.3 数据库设计
开发一个系统也需要提前设计数据库。这里的数据库是相关数据的集合,存储在一起的这些数据也是按照一定的组织方式进行的。目前,数据库能够服务于多种应用程序,则是源于它存储方式最佳,具备数据冗余率低的优势。虽然数据库为程序提供信息存储服务,但它与程序之间也可以保持较高的独立性。总而言之,数据库经历了很长一段时间的发展,从最初的不为人知,到现在的人尽皆知,其相关技术也越发成熟,同时也拥有着坚实的理论基础。
4.3.1 数据库概念设计
这部分内容需要借助数据库关系图来完成,也需要使用专门绘制数据库关系图的工具,比如Visio工具就可以设计E-R图(数据库关系图)。设计数据库,也需要按照设计的流程进行,首先还是要根据需求完成实体的确定,分析实体具有的特征,还有对实体间的关联关系进行确定。最后才是使用E-R模型的表示方法,绘制本系统的E-R图。不管是使用亿图软件,还是Visio工具,对于E-R模型的表示符号都一样,通常矩形代表实体,实体间存在的关系用菱形符号表示,实体的属性也就是实体的特征用符号椭圆表示。最后使用直线将矩形,菱形和椭圆等符号连接起来。接下来就开始对本系统的E-R图进行绘制。
(1)下图是用户实体和其具备的属性。
图4.1 用户实体属性图
(2)下图是商品信息实体和其具备的属性。
图4.2 商品信息实体属性图
(3)下图是字典表实体和其具备的属性。
图4.3 字典表实体属性图
(4)下图是购物车实体和其具备的属性。
图4.4 购物车实体属性图
(5)下图是商品评价实体和其具备的属性。
图4.5 商品评价实体属性图
(6)下图是商品订单实体和其具备的属性。
图4.6 商品订单实体属性图
(7)下图是用户表实体和其具备的属性。
图4.7 用户表实体属性图
(8)下图是收货地址实体和其具备的属性。
图4.8 收货地址实体属性图
(9)下图是新闻信息实体和其具备的属性。
图4.9 新闻信息实体属性图
4.3.2 数据库物理设计
作为程序后台的支持,本数据库也需要设计数据存储的结构。而数据存储结构的设计就包括了数据表结构的设计和创建。数据表结构包括了字段,数据类型,还有字段的取值范围等信息。而E-R模型中的实体就是一张表,实体的特征就可以作为该表中的字段,根据本程序信息存储要求,设计每个字段需要的类型,还有该字段的取值范围等。每当设计完成一张数据表,就需要及时保存在数据库里面,并对该设计的数据表准确命名,要求设置的数据表的名称尽量不要是中文,而且要方便记忆。因为在程序编码阶段,通过SQL语句可以把程序里面的数据写入在各个数据表里面,而这个环节需要使用到数据表的名称。如果数据表名称是中文的话,可能会乱码并影响程序运行。下面就以表格形式展示设计的结果。
表4.1收货地址表
序号 列名 数据类型 说明 允许空
1 Id Int id 否
2 yonghu_id Integer 创建用户 是
3 address_name String 收货人 是
4 address_phone String 电话 是
5 address_dizhi String 地址 是
6 isdefault_types Integer 是否默认地址 是
7 insert_time Date 添加时间 是
8 update_time Date 修改时间 是
9 create_time Date 创建时间 是
表4.2购物车表
序号 列名 数据类型 说明 允许空
1 Id Int id 否
2 yonghu_id Integer 所属用户 是
3 goods_id Integer 商品 是
4 buy_number Integer 购买数量 是
5 create_time Date 添加时间 是
6 update_time Date 更新时间 是
7 insert_time Date 创建时间 是
表4.3字典表表
序号 列名 数据类型 说明 允许空
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.4商品信息表
序号 列名 数据类型 说明 允许空
1 Id Int id 否
2 goods_name String 商品名称 是
3 goods_types Integer 商品类型 是
4 goods_photo String 商品照片 是
5 goods_kucun_number Integer 商品库存 是
6 goods_old_money BigDecimal 商品原价 是
7 goods_new_money BigDecimal 现价 是
8 goods_clicknum Integer 点击次数 是
9 shangxia_types Integer 是否上架 是
10 goods_delete Integer 逻辑删除 是
11 goods_content String 商品简介 是
12 create_time Date 创建时间 是
表4.5商品评价表
序号 列名 数据类型 说明 允许空
1 Id Int id 否
2 goods_id Integer 商品 是
3 yonghu_id Integer 用户 是
4 goods_commentback_text String 评价内容 是
5 reply_text String 回复内容 是
6 insert_time Date 评价时间 是
7 update_time Date 回复时间 是
8 create_time Date 创建时间 是
表4.6商品订单表
序号 列名 数据类型 说明 允许空
1 Id Int id 否
2 goods_order_uuid_number String 订单号 是
3 address_id Integer 收获地址 是
4 goods_id Integer 商品 是
5 yonghu_id Integer 用户 是
6 buy_number Integer 购买的数量 是
7 goods_order_true_price BigDecimal 实付价格 是
8 goods_order_types Integer 订单类型 是
9 goods_order_payment_types Integer 支付类型 是
10 insert_time Date 订单创建时间 是
11 create_time Date 创建时间 是
表4.7新闻信息表
序号 列名 数据类型 说明 允许空
1 Id Int id 否
2 news_name String 新闻名称 是
3 news_photo String 新闻图片 是
4 news_types Integer 新闻类型 是
5 insert_time Date 新闻发布时间 是
6 news_content String 新闻详情 是
7 create_time Date 创建时间 是
表4.8用户表
序号 列名 数据类型 说明 允许空
1 Id Int id 否
2 yonghu_name String 用户姓名 是
3 yonghu_photo String 头像 是
4 yonghu_phone String 用户手机号 是
5 yonghu_id_number String 用户身份证号 是
6 new_money BigDecimal 余额 是
7 yonghu_delete Integer 假删 是
8 create_time Date 创建时间 是
表4.9用户表表
序号 列名 数据类型 说明 允许空
1 Id Int id 否
2 username String 用户名 是
3 password String 密码 是
4 role String 角色 是
5 addtime Date 新增时间 是