第2章 系统开发相关技术
2.1 MySQL数据库
MySQL 数据库是由瑞典MySQL AB公司开发,它的使用在众多关系数据库中是最为广泛。在成本方面,MySQL相对于其他数据库便宜。而且MySQL是开源数据库管理系统。MySQL数据库的特点是:事务安全、按需可扩展性、高可用性、高可靠性、快速启动功能。可以根据这些特点,更好的管理数据,处理成千上万条数据信息记录,使数据安全性和连接的稳定性可以得到保障。MySQL的主要目标是快速、健壮和易用。在实际使用中是非常便利的,只需部署数据库所需要的环境,在数据库可视化软件的配合下搭建出数据库,设计建立合适的表,并填入需要设计的字段,符合要求的数据库就可以设计出来。这样的优点是既可以节省设计所需要的时间,同时可以在数据库可视化软件上方便快捷的查看数据库内容,其中数据内容会在数据库当中得到安全合适的储存空间,不必担心造成数据丢失,数据紊乱的情况。
2.2 Spring Boot框架
基础的Spring开发框架,依据控制反转设计思想实现依赖关系的第三方转接,通过外部调节系统注入依赖对象进行关联,同时结合切面编程思想,在业务代码关键位置定义横向扩展的相关节点,节点处抛出逻辑执行权,使得共用操作远离业务代码,转移到增强方法中进一步进行逻辑核查,最终降低功能代码之间耦合性差异,实现共用性操作逻辑一体化封装。Spring Boot的核心思想就是约定大于配置。Spring Boot帮助开发人员在默认情况下进行许多配置,从而减轻开发人员繁琐的添加依赖的负担。只需要加入Spring Boot内置的针对第三方框架的“起步依赖”,即内置的Jar包即可,而不再需要编写大量的样板代码、注释跟XML配置。在上述过程中,Bean的创建和注入以及其他模块的整合依赖XML配置,在项目规模扩大后大量配置会拖慢进度。Spring Boot有几个核心功能帮助及时掌握工程运行状态,并快速完成配置过程。两者完美契合,比较方便简单的进行平台的开发,不必担心因配置方面的问题造成平台开发上的问题。Spring Boot工作原理如图2-1所示。
图 2-1 Spring boot工作原理图
2.3 Bootstrap框架
Bootstrap是一个基于HTML、CSS和JavaScript的CSS/HTML前端框架。由于Bootstrap的可用性比较高,开发者可以根据需求,对CSS变量进行修改,其适配性非常良好,在不同设备上可进行自适应,让用户获得良好的使用体验。Bootstrap的使用也是及其方便,只需根据网站页面设计需要的配置复制到项目文件夹当中即可。
第3章 系统需求分析
3.1 功能性需求
功能性需求就是分析用户在校园闲置物品交易平台所必不可少的功能,一个良好的系统就必须拥有比较全面的功能。而校园闲置物品交易平台用户在前端主要的操作有注册、登录、评论、举报、发布商品、求购商品等功能,系统需实现此类功能以此来满足用户对系统的基本需求。而对于管理员来说,由于需维护整个系统和管理数据库、用户等之间的关系,所以设计较多功能以此来辅助管理员对整个系统平台的维护和管理,这样系统才能有条不紊的运行。同时对于数据库来说必须建立足够的表来对前台和后台的功能操作提供数据支持。
- 注册。用户访问校园闲置物品交易平台时,如果没有登录,只能浏览商品信息,如果想要体验更完全的功能必须先登录或注册,在注册页面注册时,会先验证注册的用户名是否重复,如果重复就要换一个用户名,在点击提交时,会先验证表单填写是否完整,然后在检查相关信息的格式是否填写错误,最后再提交。
- 登录。用户输入正确用户名和密码登录网站,进而浏览主页面。
- 发布商品。用户有闲置物品想要进行交易处理的时候,可以运用此功能,进入跳转页面,填写相应信息,发布自己的闲置物品。
- 举报评论。用户登录后可以点击想要查看的商品,点击后会显示商品的信息,用户感觉这个商品有一些违规信息,可以选择举报或评论,并填写合适的理由。
- 求购商品。当用户在网站的主页面上没有找到自己需要的商品时,可以运用此功能,进入跳转页面,填写相应信息,发布自己所求购的闲置物品,当有用户正好有此闲置物品就会主动联系。
3.2 非功能性需求
校园闲置物品交易平台强调的就是交易二字,特别是在某些黑客眼里,掌握用户的数据信息就可以创造巨大利益,所以对于开发系统来说,其安全性就是最关键的,必须保证用户的隐私不被窃取,避免造成财产和信息的损失。例如登录注册时可以采用密码加密的方式,防止因剽窃账号与密码造成用户账号及金钱的损失。这样可以使用户对系统保持信任,增强系统的存活率。
由于校园闲置物品交易平台主要的使用群体是在校大学生,所以系统需为页面简洁、功能便利、操作比较轻松,方便大学生使用。但与此同时,系统的性能也不能忽略。通过技术更新,提高系统的处理性能,减少页面加载、跳转与响应时间。特别是在购物节优惠期等时间,在线用户增多,造成网页卡顿以及系统崩溃,也会造成用户的使用体验差,所以需要增强系统的并发处理能力,以及系统的防干扰能力。
考虑系统的二次开发,特别是在如今这个物品大爆炸的时代,各种创新型物品层出不穷,而本系统现如今的物品分类是有限的,要想系统长久的适应于社会,必须进行更新与维护。而且要根据用户实时的意见修改系统,防止因功能的不及时更新造成用户的丢失,丧失用户对系统的信任度和满意度。同时,将每一次更新公告发布在新闻公告上,让用户可以及时的了解新版本。
第4章 系统设计与实现
4.1 总体框架设计
校园闲置物品交易平台使用了相对方便的B/S架构模式,这是目前为止最适合本系统的架构,在此基础上运用Springboot框架,整合MySQL、Bootstrap等技术,只需简单的项目配置,即可进行开发。经过分析可得,系统需要进行前后端分离的模式,以便不同的角色应用此系统。其活动图详细情形见图4-1所示。
图 4-1 系统活动图
校园闲置物品交易平台顶层数据流图将输出和输入的数据流作为为系统平台的输入和输出数据,表明校园闲置物品交易平台的范围,以及与系统平台的数据交换关系。管理员登入系统之后,通过向系统发送请求,对系统进行对应操作。用户输入用户信息进行登录验证以及操作请求也可以对系统进行访问,而校园闲置物品交易平台可以将系统管理员发布的公告向用户进行推送,用户可以进行查阅。系统顶层数据流图详细情形如图4-2所示。
图 4-2 顶层数据流图
0层数据流图的作用在于更详细的表述系统与数据表之间的联系。管理员通过向系统发送请求进行系统管理,在此期间系统从数据库中获取数据来配合管理员进行的系统的操作。而用户从数据信息表中接收数据信息,进行查阅以及修改个人信息,还会将用户提交的其余操作请求提交给管理中心并储存在数据库当中,还会从数据信息表中获取的系统通知显示给用户,用户和数据信息是在安全的情况进行连接以及双向获取和存储。如果数据没有正常获取显示,将会导致管理员或者用户的操作无效,也会在页面显示部分显示空白等情况。0层数据流图详细情形如图4-3所示。
图 4-3 0层数据流图
4.1.1 前端框架设计
系统的前端就是让用户进行体验使用的,在经过Bootstrap的页面布局与渲染下,将文字、图片等内容信息呈现给用户,设计成简洁大方的网站,让系统对于用户来说具有良好的交互体验。在符合系统规定情况下,用户可以注册账号在此页面上进行挑选闲置物品,通过相关交流并达成交易。主要包括登录注册功能,求购商品功能,发布商品功能,举报功能,评论功能和管理个人信息等功能来服务用户进行良好的交易。系统用户结构功能图如图4-4所示。
图 4-4 用户结构图
4.1.2 后端框架设计
后端主要是提供给管理员进行使用,通过用户、管理、权限之间的联系与差异,让管理员可以在后端就收从前端传输的数据,然后通过对数据信息的处理,改变在数据库可视化工具和前端页面中的UI显示。管理员对系统进行更新与维护,保证平台的稳定与性能。校园闲置物品交易平台管理员是在后台进行操作与系统发生交互的,管理员主要是对数据库的数据表进行操作,管理员模块主要包括系统设置功能、物品管理功能、学生管理功能、评论管理功能、举报管理功能、新闻公告等功能。这些功能通过轻度耦合的方式建立起关联关系,保障系统正常服务用户学生使用。系统管理员结构功能图如图4-5所示。
图 4-5 管理员结构图
4.2 系统功能模块设计
4.2.1 前端功能模块设计
-
-
-
- 登录注册功能模块。用户在浏览器进入系统的主界面,此时除可以浏览观看已发布的商品,所以要想有下一步的操作必须注册账号进行登录,如果信息输入不全或有误则会有相对应的提示,必须填写完整修改无误之后才可以进行注册。注册成功之后就会在数据库表中填写所输入的正确信息,然后根据相应的权限进行页面跳转进入对应的页面,从而使用户进行下一步的操作,所以注册登录是进入系统的前提条件。
- 发布商品功能模块。用户有闲置物品想要进行交易处理的时候,可以进入发布商品页面。此页面就是让用户处理手中的闲置物品,当有想要购买此商品的用户在主页看见发布的信息可以进行联系,从而达成交易。在发布商品模块中,用户可以通过对商品的真实图片的写实外加客观的描述,以及合理的价格吸引其他用户的注意力,让其他用户产生购买的欲望从而使自己手中的物品可以促销出去,做到真正互惠互利,让闲置物品可以循环利用。
- 举报功能模块。为了保障用户有个良好的交易体验,当在主页发现已发布的商品有违规,已登录的用户只需点击“举报”即可进行举报,经管理员核实,进行下架处理。此功能模块在系统的存在是有重大意义的,一个系统的存在必须是合规合法,保障用户利益,如果全由发布者的描述,很难保持真实客观的表达,而举报功能的实现就是让其引起管理员的注意,对商品及时下架,以免产生不利影响。
- 求购商品功能模块。当用户在网站的主页面上没有找到自己需要的商品时,可以根据页面所提示内容,在此模块上发布求购信息,经管理员审核成功,将之发布,发布成功之后将信息记录在数据库内,这样拥有此商品的用户看见发布的信息可以进行联系,从而达成交易。此功能就是相当于求助信息,通过此功能可以得到商品主页没有发布,用户又需求的商品。
- 评论功能模块。通过用户精心的评论可以提高商品的价值,拥有高评论的商品不仅可以使用户更加细致的了解商品的功能,还会提高其他用户的兴趣,获得更多用户关注,从而导致商品的促销,而且也会增加用户对此系统的粘性。当然除此之外,还要控制恶意评价,防止因其他用户的不实言论对商品以及系统造成不良影响,所以管理员应及时处理做到公平公正。
-
-
4.2.2 后端功能模块设计
-
-
-
- 系统设置功能模块。主要就是对系统、菜单、用户、还有数据库中的数据,产生的日志进行的管理,可以说此模块涉及到了系统的核心,没有此设计,系统将管理起来极其复杂。超级管理员可以在此模块上对系统的后台进行修改,以及添加普通管理员及任意权利的管理员,将权利下放,减缓压力。同时还可以观看日志,以及对系统数据的备份、删除以及还原等操作。
- 物品管理功能模块。包含了分类管理、物品管理等功能。拥有此权限的管理员可以对系统主页商品的分类做出更改,便于商品的更新换代,让系统与时俱进。物品管理则是对所上架的商品进行增删改查、推荐等功能,防止商品发生已售出仍在架的情况。求购物品则是对用户所求购的商品进行管理,防止用户发布违规求购、和已经购入但求购信息依旧存在,造成系统数据的冗余,给用户造成不良影响,从而降低用户对整个系统的满意度。
- 学生管理功能模块。主要就是对注册的用户也就是学生进行管理。管理员可以根据实时状况对已经注册的学生用户的账号进行相对应的操作,对于忘记密码的用户可告知管理员进行密码查找,从而找回账号。但是管理员也应及时处理,以免因账号问题处理的不及时造成用户的反感。同时对于注册用户较多,查找不便的情况,还可以应用搜索框精确查找。除此之外,此功能也能删除冻结一些违规账号,避免一些别有用心的用户给系统造成恶劣的影响。
- 评论管理功能模块。包含了评论列表。作为系统的管理员有权将一些违规和老旧的评论进行删除操作,避免因一些人胡言乱语影响到了整个系统适用人群,造成用户的流失。当用户增多就会造成评论较多,如果出现查找某条评论很困难的情况,还可以应用搜索框快捷查找,这样可以快速的查找所需的评论。
- 举报管理功能模块。主要就是对于商品的举报,存在于系统之中的商品并不都是符合规定的,总会有一些“漏网之鱼”会存在于系统之中,在管理员没有及时发现之时,就需要用户的举报提醒管理员此商品存在违规信息,在管理员经核实处理之后可以运用删除功能将其删除。此功能的存在目的就是让用户远离一些不符合规定的商品,避免上当受骗,对系统的声誉造成影响。同时对于举报较多,查找不便的情况,还可以应用搜索框快捷查找。
- 新闻公告功能模块。主要就是发布公告列表。管理员可以在此添加、编辑、删除一些规则,也可以将系统更新公告发布与此,此功能处理系统更新可能会造成用户短时间的不适应的问题,以便用户参考,与此同时,将此公告陈列到系统较为突出的地方,以便用户可以第一眼看到。管理员对此拥有同时对于公告较多,查找不便的情况,还可以应用搜索框快捷查找。
-
-
4.3 系统数据库设计
4.3.1 数据库E-R图设计
数据库设计就是把面向对象的方法和数据库联合一起,能够对数据库简单的分析,方便数据库开发人员与用户之间的沟通。合理的实体图能够有效的帮助开发者理清设计思路,快速构建项目。校园闲置物品交易平台设计主要的实体就是用户、管理员、商品、公告、评论等实体。各实体之间通过联系共同组成数据库,其中一个用户可以发布多条评论属于一对多关系,管理员发布公告、用户查看公告、用户添加商品、管理员审核商品和用户和管理员之间都是属于多对多关系。校园闲置物品交易平台总体E-R图详细情形如图4-6所示。
图 4-6 数据库E-R图
4.4 前台功能模块实现
4.4.1 登录注册模块
登录功能的实现,打开系统之后进入登录界面,输入数据库对应的用户名实现登录。登录成功之后进入到系统主界面,然后可以进行相关功能性操作。校园闲置物品交易平台登录注册功能具体详情如图4-7所示。
图 4-7 登录注册图
4.4.2 发布商品模块
发布商品功能模块的实现,用户根据系统提示填写相关信息,正确无误之后,点击发布即可发布商品。页面具体详情如图4-8所示。
图 4-8 发布商品图
4.4.3 求购商品模块
求购商品功能模块的实现,用户根据系统提示填写相关信息,正确无误之后,点击发布即可发布商品。求购商品页面如图4-9所示。
图 4-9 求购商品图
4.4.4 举报模块
用户想要举报某件商品,可以在商品详情页面底部填写恰当的举报原因,提交举报,上传给管理员。举报页面如图4-10所示。
图 4-10 举报图
4.4.5 评论模块
用户可以在商品页面浏览评论,并且可以发布评论。评论页面如图4-11所示。
图 4-11 评论图
4.5 后台功能模块实现
4.5.1 系统设置模块
系统设置模块是校园闲置物品交易平台的核心之一。管理员可以通过此功能模块对系统的整个布局,整个设置做出一定的修改。系统设置图如图4-12所示。
图 4-12 系统设置图
4.5.2 物品管理模块
在物品管理模块中管理员可以对在架的商品进行处理,让一些不符合规定的商品进行下架操作,对一些较好的商品进行推荐,使用户可以有一个良好的挑选物品的体验。物品管理图详细情形如图4-13所示。
图 4-13 物品管理图