毕业设计:基于springboot的厨艺交流平台的设计与实现(源码)
4 系统设计4.1系统概要设计厨艺交流平台并没有使用C/S结构而是基于网络浏览器的方式去访问服务器进而获取需要的数据信息这种依靠浏览器进行数据访问的模式就是现在用得比较广泛的适用于广域网并且没有网速限制要求的B/S结构图4.1就是开发出来的程序工作原理图。图4.1 程序工作的原理图4.2系统功能结构设计下图就是系统功能结构图。图4.1 系统功能结构图4.3数据库设计4.3.1数据库E-R图设计程序设计是离不开对应数据库的设计操作的这样的做法就是减少数据对程序的依赖性所以数据库的设计也是需要花费大量的日常时间来进行设计的在设计中对程序开发需要存储的数据信息进行实体划分先确认实体然后设计实体的属性等操作这种设计就是数据库设计里面不能少的必须有的E-R模型设计。为了降低程序设计的对应的数据库设计难度开发人员也可以使用相应的工具来进行E-R模型设计现在市面上设计E-R模型的工具有PowerDesigner建模工具Navicat制作工具还有微软的Visio绘图工具。为了简便起见本程序在设计E-R模型的时候就选用了微软的Visio这款功能强大操作便利的绘图工具。下面就展示厨艺交流平台的实体E-R图。1下图就是商品信息实体E-R图图4.7 商品信息实体E-R图2下图就是菜谱分类实体E-R图图4.8 菜谱分类实体E-R图3下图就是商品分类实体E-R图图4.9 商品分类实体E-R图4.3.2 数据库表结构设计本次程序开发选用的数据库管理工具是MySQL数据管理工具使用它存放数据也需要创建程序对应的数据库文件并命名刚创建的数据库文件有了数据库也需要创建各种数据表来充实数据库在数据表的创建中不仅需要对数据表命名也需要对数据表的字段进行设计包括每个数据表里面需要设置的字段名称字段对应的数据类型信息字段的主键设置这个也是不可缺少的因为每个数据表里面的主键就是标记着这个数据表跟其他数据表相区分的唯一标志。就相当于生活中的每个人都有姓名但是上网搜索自己的名字会发现全国上下有很多人的名字跟自己的名字一模一样包括姓氏以及名字区分每个人的唯一信息就是每个人的身份证号信息主键在数据表里面也是起着这样的重要作用。下面就介绍本次开发的程序厨艺交流平台的数据表结构信息。表4.1 菜谱分类字段类型空默认注释id (主键)bigint(20)否主键addtimetimestamp否CURRENT_TIMESTAMP创建时间caipufenleivarchar(200)否菜谱分类表4.2 菜谱信息字段类型空默认注释id (主键)bigint(20)否主键addtimetimestamp否CURRENT_TIMESTAMP创建时间caipinbianhaovarchar(200)是NULL菜品编号caipinmingchengvarchar(200)是NULL菜品名称caipufenleivarchar(200)是NULL菜谱分类kouweivarchar(200)是NULL口味nanduvarchar(200)是NULL难度pengrenshizhangvarchar(200)是NULL烹饪时长tupianvarchar(200)是NULL图片yuancailiaolongtext是NULL原材料caipinjieshaolongtext是NULL菜品介绍thumbsupnumint(11)是0赞crazilynumint(11)是0踩clicknumint(11)是0点击次数表4.3 购物车表字段类型空默认注释id (主键)bigint(20)否主键addtimetimestamp否CURRENT_TIMESTAMP创建时间tablenamevarchar(200)是shangpinxinxi商品表名useridbigint(20)否用户idgoodidbigint(20)否商品idgoodnamevarchar(200)是NULL商品名称picturevarchar(200)是NULL图片buynumberint(11)否购买数量pricefloat是NULL单价discountpricefloat是NULL会员价表4.4 健康文章字段类型空默认注释id (主键)bigint(20)否主键addtimetimestamp否CURRENT_TIMESTAMP创建时间wenzhangbiaotivarchar(200)是NULL文章标题wenzhangfengmianvarchar(200)是NULL文章封面wenzhangleixingvarchar(200)是NULL文章类型fabushijiandatetime是NULL发布时间wenzhangneironglongtext是NULL文章内容表4.5 美食日志字段类型空默认注释id (主键)bigint(20)否主键addtimetimestamp否CURRENT_TIMESTAMP创建时间rizhibianhaovarchar(200)是NULL日志编号rizhibiaotivarchar(200)是NULL日志标题rizhifengmianvarchar(200)是NULL日志封面yonghuzhanghaovarchar(200)是NULL用户账号yonghuxingmingvarchar(200)是NULL用户姓名fabushijiandatetime是NULL发布时间meishirizhilongtext是NULL美食日志thumbsupnumint(11)是0赞crazilynumint(11)是0踩表4.6 订单字段类型空默认注释id (主键)bigint(20)否主键addtimetimestamp否CURRENT_TIMESTAMP创建时间orderidvarchar(200)否订单编号tablenamevarchar(200)是shangpinxinxi商品表名useridbigint(20)否用户idgoodidbigint(20)否商品idgoodnamevarchar(200)是NULL商品名称picturevarchar(200)是NULL商品图片buynumberint(11)否购买数量pricefloat否0价格/积分discountpricefloat是0折扣价格totalfloat否0总价格/总积分discounttotalfloat是0折扣总价格typeint(11)是1支付类型statusvarchar(200)是NULL状态addressvarchar(200)是NULL地址telvarchar(200)是NULL电话consigneevarchar(200)是NULL收货人表4.7 商品分类字段类型空默认注释id (主键)bigint(20)否主键addtimetimestamp否CURRENT_TIMESTAMP创建时间shangpinfenleivarchar(200)否商品分类表4.8 商品信息字段类型空默认注释id (主键)bigint(20)否主键addtimetimestamp否CURRENT_TIMESTAMP创建时间shangpinmingchengvarchar(200)是NULL商品名称shangpinbianhaovarchar(200)是NULL商品编号shangpinfenleivarchar(200)是NULL商品分类tupianvarchar(200)是NULL图片shangpinxiangqinglongtext是NULL商品详情pricefloat否价格onelimittimesint(11)是-1单限alllimittimesint(11)是-1库存表4.9 食材分类字段类型空默认注释id (主键)bigint(20)否主键addtimetimestamp否CURRENT_TIMESTAMP创建时间shicaifenleivarchar(200)否食材分类表4.10 食材信息字段类型空默认注释id (主键)bigint(20)否主键addtimetimestamp否CURRENT_TIMESTAMP创建时间shicaimingchengvarchar(200)是NULL食材名称shicaichandivarchar(200)是NULL食材产地shicaididianvarchar(200)是NULL食材地点shicaireliangvarchar(200)是NULL食材热量fabushijiandatetime是NULL发布时间shicaifengmianvarchar(200)是NULL食材封面shiyongyijilongtext是NULL食用宜忌xuangoujiqiaolongtext是NULL选购技巧thumbsupnumint(11)是0赞crazilynumint(11)是0踩表4.11 收藏表字段类型空默认注释id (主键)bigint(20)否主键addtimetimestamp否CURRENT_TIMESTAMP创建时间useridbigint(20)否用户idrefidbigint(20)是NULL收藏idtablenamevarchar(200)是NULL表名namevarchar(200)否收藏名称picturevarchar(200)否收藏图片表4.12 管理员信息表字段类型空默认注释id (主键)bigint(20)否主键usernamevarchar(100)否用户名passwordvarchar(100)否密码rolevarchar(100)是管理员角色addtimetimestamp否CURRENT_TIMESTAMP新增时间表4.13 用户字段类型空默认注释id (主键)bigint(20)否主键addtimetimestamp否CURRENT_TIMESTAMP创建时间yonghuzhanghaovarchar(200)否用户账号yonghuxingmingvarchar(200)否用户姓名mimavarchar(200)否密码xingbievarchar(200)是NULL性别nianlingint(11)是NULL年龄lianxidianhuavarchar(200)是NULL联系电话dianziyouxiangvarchar(200)是NULL电子邮箱moneyfloat是0余额5 系统实现5.1食材分类管理管理员管理食材分类可以添加修改删除食材分类信息。下图就是食材分类管理页面。图5.1 食材分类管理页面5.2 用户信息管理管理员管理用户信息可以添加修改删除用户信息信息。下图就是用户信息管理页面。图5.2用户信息管理页面5.3 菜谱分类管理管理员管理菜谱分类可以添加修改删除菜谱分类信息。下图就是菜谱分类管理页面。图5.3 菜谱分类管理页面5.4菜谱信息管理管理员管理菜谱信息可以添加修改删除菜谱信息信息。下图就是菜谱信息管理页面。图5.4 菜谱信息管理页面5.5食材信息管理管理员管理食材信息可以添加修改删除食材信息信息。下图就是食材信息管理页面。图5.5 食材信息管理页面