校园美食探索者:Spring Boot开发的分享平台

第二章 系统分析

2.1 可行性分析

可行性分析的目的是确定一个系统是否有必要开发、确定系统是否能以最小的代价实现。其工作主要有三个方面,分别是技术、经济和社会三方面的可行性。我会从这三个方面对网上校园周边美食探索及分享平台进行详细的分析。

2.1.1技术可行性

该系统主要使用JAVA、MyEclipse和MySQL数据库进行开发,Java易于学习和使用灵活。在校期间也接触过MyEclipes和MySQL数据库的课程,对此有一定的开发经验,因此开发难度不高,所以从技术上来说是可行的。

2.1.2经济可行性

本系统设计所选择的开发工具和服务器都是免费的开源软件,又或者是适合用户使用的免费版本,并不需要支付费用,而且由作者本人单独完成,也不存在团队费用,几乎没有经济成本,具备经济可行性。

2.1.3社会可行性

社会可行性主要包括法律和用户两个方面,下面将从这两方面进行分析。

(1)法律因素

本系统是学习开发所制作的程序,并不用作商业用途,是在根据实际调研的结果结合现有的网上校园周边美食探索及分享平台后得出的,而且系统制作的全部过程都是在个人的工作电脑中完成的,使用的都是开源和免费的开发环境、分析软件和数据库,不存在侵权问题。

(2)用户可行性

操作人员或者用户只需要具备一定的windows电脑操作常识,不需要精通计算机技能。此外系统管理人员,只需要在windows常识之上再熟悉下使用Tomcat服务器的操作流程,只要掌握一定的计算机知识即可,在正式上线运营之前,仅需要对操作人员进行简单的熟悉流程培训即可。所以从用户可行性上也是可行的。

2.2总体设计原则

一个系统要在开发和维护的过程中方便使用,必须采取一定的设计原则,其主要设计原则有:

简单性:系统功能简单易懂,只需要掌握基本的计算机操作能力即可使用。

针对性:针对特定的校园周边美食探索及分享平台用户,没有多余的其他功能,使用户可以专心使用。

实用性:能够满足用户方面的需求。

一致性:设计风格、命名规范一致,整个系统的各个功能模块色彩、摆放位置、功能等都是一致的。

先进性:本系统的代码采用读取数据的方式,方便后续开发、拓展。

2.3 系统需求分析

校园周边美食探索及分享平台需要满足的需求有以下几个:

(1)实现管理系统信息关系的系统化、规范化和自动化;

(2)减少维护人员的工作量以及实现用户对信息的控制和管理。

(3)方便查询信息及管理信息等;

(4)通过网络操作,改善处理问题的效率,提高操作人员利用率;

(5)考虑到用户多样性特点,要求界面简单,操作简便。

2.4 业务流程分析

2.4.1登录流程

登录模块主要满足管理员以及用户的权限登录,用户登录流程图如图2-1所示。

图2-1 登录流程图

2.4.2注册流程

未有账号的用户可进入注册界面进行注册操作,用户注册流程图如图2-2所示。

图2-2 注册流程图

2.4.3添加信息流程

用户在添加信息时,信息编号自动生成,系统会对添加的信息进行验证,验证通过则添加至数据库,添加信息成功,反之添加失败。添加信息流程如图2-3所示。

图2-3 添加信息流程图

2.4.4删除信息流程

用户可选择要删除的信息进行信息删除操作,在删除信息时系统提示是否确定删除信息,是则删除信息成功,系统数据库将信息进行删除。删除信息流程图如图2-4所示。

图2-4删除信息流程图

第三章 系统设计

3.1 系统概要设计

本校园周边美食探索及分享平台选择B/S结构(Browser/Server,浏览器/服务器结构)和基于Web服务两种模式。适合在互联网上进行操作,只要用户能连网,任何时间、任何地点都可以进行系统的操作使用。系统工作原理图如图3-1所示:

图3-1 系统工作原理图

3.2系统结构设计

整个系统是由多个功能模块组合而成的,要将所有的功能模块都一一列举出来,然后进行逐个的功能设计,使得每一个模块都有相对应的功能设计,然后进行系统整体的设计。

本校园周边美食探索及分享平台结构图如图3-2所示。

图3-2 校园周边美食探索及分享平台结构图

3.3 数据库设计

数据库可以说是所有软件的根本,如果数据库存在缺陷,那么会导致系统开发的不顺利、维护困难、用户使用不顺畅等一系列问题,严重时将会直接损害商家的利益,同时在开发完成后,数据库缺陷也更加难以解决。所以必须要对数据库设计重点把握,做到认真细致。因此,数据库设计是这个在线校园周边美食探索及分享平台的重点要素。

3.3.1概念结构设计

(1)管理员信息实体属性图如下图3-3所示

图3-3管理员信息实体属性图

(2)用户信息:用户名、姓名、手机、邮箱、身份证、照片实体属性如下图3-4所示

  图3-4用户信息实体属性图

(3)我的好友管理实体属性如下图3-5所示

图3-5我的好友管理实体属性图

(4)美食鉴赏信息:发布时间、美食名称、美食类别、美食介绍、商品所在、推荐指数、美食照片、商品价格、用户名、姓名、美食介绍实体属性如下图3-6所示

图3-6美食鉴赏信息实体属性图

3.3.2数据库表设计

将数据库概念设计的E-R图转换为关系数据库。在关系数据库中,数据关系由数据表组成,但是表的结构表现在表的字段上。

表名:users

功能:用户表

字段名称 类型 长度 字段说明 主键 默认值

id bigint 主键

主键

username varchar 100 用户名

password varchar 100 密码

role varchar 100 角色 管理员

addtime timestamp 新增时间 CURRENT_TIMESTAMP

表名:config

功能:配置文件

字段名称 类型 长度 字段说明 主键 默认值

id bigint 主键

主键

name varchar 100 配置参数名称

value varchar 100 配置参数值

表名:token

功能:token表

字段名称 类型 长度 字段说明 主键 默认值

id bigint 主键

主键

userid bigint 用户id

username varchar 100 用户名

tablename varchar 100 表名

role varchar 100 角色

token varchar 200 密码

addtime timestamp 新增时间 CURRENT_TIMESTAMP

expiratedtime timestamp 过期时间 CURRENT_TIMESTAMP

表名:meishijianshang

功能:美食鉴赏

字段名称 类型 长度 字段说明 主键 默认值

id bigint 主键

主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP

fabushijian bigint 发布时间

meishimingcheng bigint 美食名称

meishileibie longtext 4294967295 美食类别

meishijieshao longtext 4294967295 美食介绍

shangpusuozaidi int 商品所在

tuijianzhishu bigint

推荐指数

meishizhaopian bigint 美食照片

shangpinjiage longtext 商品价格

yonghuming longtext 用户名

xingming int 姓名

表名:wodehaoyou

功能:我的好友

字段名称 类型 长度 字段说明 主键 默认值

id bigint 主键

主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP

yonghuming bigint 用户名

xingming bigint 姓名

tianjiashijian varchar 200 添加时间

表名:yonghu

功能:用户

字段名称 类型 长度 字段说明 主键 默认值

id bigint 主键

主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP

yonghuming varchar 200 用户名

mima varchar 200 分类

xingming varchar 200 姓名

shouji varchar 200 手机

youxiang varchar 200 邮箱

shenfenzheng int 身份证

zhaopian longtext 4294967295 照片

相关推荐
azhou的代码园3 分钟前
基于JAVA+SpringBoot+Vue的制造装备物联及生产管理ERP系统
java·spring boot·制造
wm104344 分钟前
java web springboot
java·spring boot·后端
龙少95432 小时前
【深入理解@EnableCaching】
java·后端·spring
溟洵4 小时前
Linux下学【MySQL】表中插入和查询的进阶操作(配实操图和SQL语句通俗易懂)
linux·运维·数据库·后端·sql·mysql
SomeB1oody7 小时前
【Rust自学】6.1. 定义枚举
开发语言·后端·rust
SomeB1oody7 小时前
【Rust自学】5.3. struct的方法(Method)
开发语言·后端·rust
路在脚下@8 小时前
spring boot的配置文件属性注入到类的静态属性
java·spring boot·sql
啦啦右一8 小时前
Spring Boot | (一)Spring开发环境构建
spring boot·后端·spring
森屿Serien8 小时前
Spring Boot常用注解
java·spring boot·后端
苹果醋39 小时前
React源码02 - 基础知识 React API 一览
java·运维·spring boot·mysql·nginx