基于Java的希望树营养膳食管理系统的设计与实现_第1页
基于Java的希望树营养膳食管理系统的设计与实现_第2页
基于Java的希望树营养膳食管理系统的设计与实现_第3页
基于Java的希望树营养膳食管理系统的设计与实现_第4页
基于Java的希望树营养膳食管理系统的设计与实现_第5页
已阅读5页,还剩50页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于Java的希望树营养膳食管理系统的设计与实现

[2]。当下在海外市场,帮助人们调理身体健康的膳食管理软件越来越多,这就说明了饮食健康的重要性,良好的饮食习惯能从根源上避免一些疾病的发生。近年来,在国内市场上出现了许多与个人健康管理相关的服务体系,它是一项正在快速发展的新技术,与健康管理相关的软件如雨后的春笋层出不穷,里面有挂号、医院科室咨询、饮食信息管理等模块,就此能看出,个人健康管理服务系统具有丰富的功能,为不同的用户提供了便利。2021年,张清在《 ‎基于And ‎roid的个人健康助理系统的设计与实现》中指出随着社会的快速发展,以及人们对健康管理的日益关注,开发出一款可以在任何时间内查看个人体征信息的医疗健康助理手机APP越来越重要REF_Ref133052447\r\h[4]。以Android为基础,设计了一套个人健康助理系统,可以让人们在任何时候,都可以随时且方便地查询到个人的医疗信息。1.3论文组织架构文章思路序次如下:第一章:论文研究的意义、国内外类似问题的当前状况、论文框架等。第二章:本文的钻研背景及主要的技术手段。第三章:从理论上分析了“希望树”的营养膳食管理体系的可行性及需要性。第四章,以“希望树”为例,对其功能模块和数据库进行设计。第五章:实现“希望树”的各个功能模块。第六章:完成对“希望树”各功能模块的实验,并给出了运行结果。结论:总结了“希望树”的营养膳食管理体系,并提出了未来的发展方向。保定理工学院本科毕业设计第2章相关理论和技术2.1Java简介Java在编译工作中有不容置疑的影响,在嵌入式系统里尤为明显。在该平台中,仅有130KB的数据可以被用于(对灵巧卡或传感器)。Hadoop和其它许多大数据处理技术都使用了Java,比如Apache的HBase、Accumulo、Accumulo、ElasticSearchas等。Java平台增强了该平台的功能,并适时地进行了编译。这也就是为什么Java被用来写交易平台的原因,它非常适合于科研领域,其中就包括了自然语言处理。其主要理由是相对于C++和其他语言,Java在安全性,可携带性,可维护性,和其它高层次语言的并发性等方面都要优于它们。2.2MySQL特点 MySQL是一个关系数据库,它不需要把全部的数据都储存在一块很大的内存里。SQL作为一种最常用和最精确的数据库存取语言,用其便捷、高速、低维护等优点征服了非常多的中小站点。本系统在4.1版中加入了新的MySQL许多新的软件性能,包括一个更高的仅针对子健查询、一个基于主键盘和更高运行速度的数据缓存、一个基于您的地理坐标位置的实时信息采集查询。而经过同步进行研究和精心制作出来的5.0版本将它们所符合要求的各种使用体验对象正确地充分瞄准中小企业和个人用户。2.3MVC框架模式在固有的MVC模式中,M是业务模型,V是用户界面,C是控制,为了使其能在一个程序中运行,则用MVC是将M与V分开,用差别的方式来表达。此中,View的定义很明确,为用户页。模型-视图-控制器(MVC)在二十世纪八十年代成为绝大多数开发人员的首选,它是设计过程中极为有效的好帮手。它的视图层、服务层是分隔的,这样让我们能够在不对模型与控制器进行重编的条件下,单独对视图层进行变更,正由于这两个模块分隔开来互不影响,才能够简便高效地改动数据层和应用程序业务准则。第3章系统分析3.1可行性分析3.1.1技术可行性在信息设计过程中,要将技术可行性框架、操作系统、编程语言等运用起来,来检查系统实现的可能性。不仅得将重中之重放在关注系统在开发过程中所存在的技术风险,还得对主要技术问题以及它们对开发成本的影响等进行检查。通体设计系统围绕Java技术实现网页效果,采用MVC产品设计,用其缘由为MVC设计模式安全、靠谱、稳健、便捷、先进,具有明朗的视觉控制功能,综合其优势,本文提出了一种新的、先进的、易于使用的、自生成的程序设计语言。它具有重量轻、性能好、可测试性强等特点。由此可见,这在技术上是可达到的。3.1.2经济可行性开发该平台必备的基本硬件环境是计算机系统和相应的硬件;用到的开发工具都是Java、标准和MySQL数据库语言。我们用到的软件和硬件在购物中心都很方便获取,或者可以在相应的网站上找到并下载,而且相对成本非常低,无论学校或在实习环境,理应这么做。其费用主要涉及到网络平台的建设与维护,而不存在因教学而产生的巨额经济费用。总之,从经济学的观点讲,本系统的费用效率可以得到,并且可以为本系统的开发提供一个良好的平台。3.1.3操作可行性一旦开发完成,易于使用,功能多式多样,这可以确保其有用性,使用户可以充分利用它,使操作系统更容易,并且非常容易学习和玩。本系统的操作有助于用户通过本系统搜索健康食谱,可以扫描该食物的能量,然后提供符合自身要求食用量的信息。分析最初填写的信息,给各类群体推荐符合要求的多元食物组合。综合论述,在操作系统上是能够达成预期结果的。3.1.4法律可行性在法定意义上,整个发展流程具有以下特征:1、在发展过程中所采用的一切技术来源均为合法取得;2、在整个研制过程中没有任何知识产权方面的纠纷;3、没有盗版,没有侵权;4、一切自己研发,没有触及任何法律责任。3.2需求分析本系统应实现页面精炼、易于操作、用户界面明朗直观。对于非特定受众来说,它应该很容易一目了然地学习,而不需要掌握或简单介绍。除此之外,页面还有“帮助”功能。通体设计风格活泼,色彩协调,用户的应用信息和个人形象显示在页面上,展露出人性化。用户最初要做的事情:在系统注册后,在页面中输入使用者名和注册密码,首次登录后,需要在登录页面上,填写使用者名称,登录密码。查找食谱,使用者能在本系统中查找一份健康的食谱,进而知晓该食品的热量,并根据相关的内容,说明较为恰当的食用份量儿童成长记录,用户只需填写其基本信息即可填写其健康记录;个人中心,可以管理个人信息;个人信息完成后,软件会根据内容自动更改,为用户供应合适的配菜服务;用户根据自己目前的状态,实时更新个人信息;根据初学者提供的信息推荐食谱,向各类群体推广适合的食物。3.2.1功能需求分析在研究和市场分析的基础上,明确了系统的功能和要求。该软件的目标是适合广泛的用户,就应该从用户角度换位思考尽可能地改进其功能。这个软件应该针对大学生群体。作为一款学习软件,它允许用户更好地参与在线学习。它的主要实现功能如下:(1)服务器端:管理员可以随意更改自己权限范围内的一切,便于服务。(2)客户端在移动设备软件里注册登录;登录后,可以继续填写相关资料,阅览食谱,管理膳食信息。3.2.2非功能需求分析(1)信息安全:本文以Java为基础,将其视为一种信息系统软件。安全第一,这是信息技术中永恒的真理。在通体设计过程里,它的安全性从两个方面呈现:数据安全和系统安全。系统安全是最大的拦路虎,它的重中之重在于全面地考虑到安全和稳定,确保整个系统顺利工作。数据安全性是指数据库服务器与用户之间的相互关系,使其能够自主地运行与维护自身的信息。(2)软件系统的性能可靠性:基于Java希望树营养膳食管理系统的系统性能可靠度是通过硬件来实现的,而一个软件的可靠度是通过程序来实现的。通过将各种思路整合到监控软件系统设计方案中,整个监控系统在其正常运行过程中,有效地控制了许多其他情况下不会发生的紧急问题。第4章系统设计4.1功能模块设计根据对系统的功能分析有以下关键的功能模块:体检报告管理、每日食谱推荐、食材出库管理、菜单分类管理、家长自制食谱管理、膳食报名管理、儿童成长记录管理、儿童信息管理。如图4.1所示:图4.1系统功能模块图4.2数据库概念设计1.管理员用例图图4.2管理员用例图2.用户用例图图4.3用户用例图3.希望树营养膳食管理系统E-R图用户用户头像电话性别密码用户名姓名管理员电话地址账号订单订单编号编号商品价格数量总价密码收货人管理生成管理进行购物车回复包含食材信息食材编号食材分类产地数量价格总价价格保质期1n在线咨询mnmnmmnmn1n图4.4希望树营养膳食管理系统E-R图4.3数据库逻辑设计本软件系统的物理表单结构设计的策略方针是通过结合关系函数模型方法选择数据的方法,设计以生成包含多种类型数据库(如关系、索引等)的结构表单。每个客户订单信息记录表、配置文件表、客户表、信息记录表,每个表由多个订单记录中的字段符号构成,每个订单记录又由多个登记字段符号构成。当建立一个新的列表时,系统可以在每个列表的内存中分配一个位置,并创建一个存储数据段来自动存储数据。不同行的记录的每列每个字段中存储数据的顺序与我们在其他时间定义表时出现的顺序一样。对于每个主键数据表,使用新的主键来指定其数据索引数据字段,显著增加了对主键数据表的访问次数;在此基础上,提出了一种利用关键字段重建数据库和表之间数据连接的方法,以提高数据处理的效率。(1)膳食活动shanshihuodong“膳食活动shanshihuodong”用来帮存储膳食活动的信息。膳食活动结构如表4.1所示。表4.1膳食活动表字段名称类型长度字段说明主键默认值idbigint主键主键addtimetimestamp创建时间CURRENT_TIMESTAMPhuodongmingchengvarchar50活动名称fengmianlongtext4294967295封面kaishishijiandatetime开始时间jieshushijiandatetime结束时间huodongdidianvarchar50活动地点fuzerenvarchar50负责人lianxidianhuavarchar50联系电话baomingriqivarchar50报名日期huodongneironglongtext4294967295活动内容clicktimedatetime最近点击间clicknumint点击次数0(2)地址address“地址address”是一种信息,用于储存使用者设定的地址。表4.2中呈现了地址的结构。表4.2地址表字段名称类型长度字段说明主键默认值idbigint主键主键addtimetimestamp创建时间CURRENT_TIMESTAMPuseridbigint用户idaddressvarchar50地址namevarchar30收货人phonevarchar30电话isdefaultvarchar30是否默认地址[是/否](3)订单orders“订单orders”用于对用户的订单进行登记。表4.7中呈现了订单的结构。表4.3订单表字段名称类型长度字段说明主键默认值idbigint主键主键addtimetimestamp创建时间CURRENT_TIMESTAMPorderidvarchar50订单编号tablenamevarchar50商品表名shicaixinxiuseridbigint用户idgoodidbigint商品idgoodnamevarchar50商品名称picturelongtext429496725商品图片buynumberint购买数量pricefloat价格0discountpricefloat折扣价格0totalfloat总价格0discounttotalfloat折扣总价格0typeint支付类型1statusvarchar50状态addressvarchar50地址telvarchar50电话consigneevarchar50收货人remarkvarchar50备注logisticslongtext4294967295物流(4)通知公告news“通知公告news”是一种信息,用于对由系统发出的通知进行记录。表4.4中列出了通知公告的结构。表4.4通知公告表字段名称类型长度字段说明主键默认值idbigint主键主键addtimetimestamp创建时间CURRENT_TIMESTAMPtitlevarchar50标题introductionlongtext4294967295简介picturelongtext4294967295图片contentlongtext4294967295内容(5)用户yonghu“用户yonghu”的作用是放置用户资料。表4.5展示了它的的结构。表4.5用户表字段名称类型长度字段说明主键默认值idbigint主键主键addtimetimestamp创建时间CURRENT_TIMESTAMPzhanghaovarchar50账号mimavarchar50密码xingmingvarchar50姓名nianlingint年龄xingbievarchar50性别shoujivarchar50手机touxianglongtext4294967295头像moneyfloat余额0(6)每日食谱meirishipu“每日食谱meirishipu”是用来记录推荐的每日食谱的信息。每日食谱的结构如表4.6所示。表4.6每日食谱表字段名称类型长度字段说明主键默认值idbigint主键主键addtimetimestamp创建时间CURRENT_TIMESTAMPshipubianhaovarchar50食谱编号shipumingchengvarchar50食谱名称leixingvarchar50类型kouweivarchar50口味fengmianlongtext429496725封面riqidate日期caipujieshaolongtext4294967295菜谱介绍(7)用户表users“用户表users”用于为全部用户提供私人信息的日志。表4.7显示了用户表的结构。表4.7用户表字段名称类型长度字段说明主键默认值idbigint主键主键usernamevarchar50用户名passwordvarchar50密码rolevarchar50角色管理员addtimetimestamp新增时间CURRENT_TIMESTAMP(8)活动报名huodongbaoming“活动报名huodongbaoming”存储着报名者的资料,活动报名的结构见表4.8。表4.8活动报名表字段名称类型长度字段说明主键默认值idbigint主键主键addtimetimestamp创建时间CURRENT_TIMESTAMPbaomingbianhaovarchar50报名编号huodongmingchengvarchar50活动名称baomingyuanyinlongtext4294967295报名原因baomingshijiandatetime报名时间zhanghaovarchar50账号xingmingvarchar50姓名shoujivarchar50手机crossuseridbigint跨表用户idcrossrefidbigint跨表主键idsfshvarchar50是否审核待审核shhflongtext4294967295审核回复(9)token表token“token表token”是用来记录系统添加的信息。token表的结构如表4.9所示。表4.9token表字段名称类型长度字段说明主键默认值idbigint主键主键useridbigint用户idusernamevarchar50用户名tablenamevarchar50表名rolevarchar50角色tokenvarchar50密码addtimetimestamp新增时间CURRENT_TIMESTAMPexpiratedtimetimestamp过期时间CURRENT_TIMESTAMP(10)食谱分享评论表discussshipufenxiang“食谱分享评论表discussshipufenxiang”是用来记录用户的分享评论的信息。食谱分享评论表的结构如表4.10所示。表4.10食谱分享评论表字段名称类型长度字段说明主键默认值idbigint主键主键addtimetimestamp创建时间CURRENT_TIMESTAMPrefidbigint关联表iduseridbigint用户idavatarurllongtext4294967295头像nicknamevarchar50用户名contentlongtext4294967295评论内容replylongtext4294967295回复内容(11)体检报告tijianbaogao“体检报告tijianbaogao”是用存储用户体检报告的信息。体检报告的结构如表4.11所示。表4.11体检报告表字段名称类型长度字段说明主键默认值idbigint主键主键addtimetimestamp创建时间CURRENT_TIMESTAMPbaogaodanhaovarchar50报告单号tijianxiangmuvarchar50体检项目zhanghaovarchar50账号xingmingvarchar30姓名shengaovarchar30身高tizhongvarchar30体重tijianbaogaolongtext4294967295体检报告jianyilongtext4294967295建议dengjishijiandatetime登记时间(12)食材信息评论表discussshicaixinxi“食材信息评语表Discussshicaixinxi”是用于储存食材信息评语的内容信息。在表4.12中呈现了原料信息注释表的结构。表4.12食材信息评论表字段名称类型长度字段说明主键默认值idbigint主键主键addtimetimestamp创建时间CURRENT_TIMESTAMPrefidbigint关联表iduseridbigint用户idavatarurllongtext4294967295头像nicknamevarchar30用户名contentlongtext4294967295评论内容replylongtext4294967295回复内容(13)收藏表storeup“收藏表storeup”收录用户的收藏信息。表4.13呈现了收藏列表的结构。表4.13收藏表字段名称类型长度字段说明主键默认值idbigint主键主键addtimetimestamp创建时间CURRENT_TIMESTAMPuseridbigint用户idrefidbigint商品idtablenamevarchar30表名namevarchar30名称picturelongtext4294967295图片typevarchar50类型(1:收藏,21赞,22:踩,31:竞拍参与,41:注)1inteltypevarchar50推荐类型remarkvarchar50备注(14)膳食活动评论表discussshanshihuodong“膳食活动评论表discussshanshihuodong”是用来记录膳食活动评论的信息。膳食活动评论表的结构如表4.14所示。表4.14膳食活动评论表字段名称类型长度字段说明主键默认值idbigint主键主键addtimetimestamp创建时间CURRENT_TIMESTAMPrefidbigint关联表iduseridbigint用户idavatarurllongtext4294967295头像nicknamevarchar30用户名contentlongtext4294967295评论内容replylongtext4294967295回复内容(15)食谱分享shipufenxiang“食谱分享shipufenxiang”是用来记录用户食谱分享的内容信息。食谱分享的结构如表4.15所示。表4.15食谱分享表字段名称类型长度字段说明主键默认值idbigint主键主键addtimetimestamp创建时间CURRENT_TIMESTAMPshipumingchengvarchar50食谱名称shipufenleivarchar50食谱分类fengmianlongtext4294967295封面zhizuoshipinlongtext4294967295制作视频zhuyaocailiaolongtext4294967295主要材料faburiqidate发布日期shipuxiangqinglongtext4294967295食谱详情zhanghaovarchar200账号xingmingvarchar200姓名thumbsupnumint赞0crazilynumint踩0clicktimedatetime最近点击间clicknumint点击次数0(16)配置文件config“配置文件config”记录系统的配置资料。表4.26中显示了配置文件的结构。表4.16配置文件表字段名称类型长度字段说明主键默认值idbigint主键主键namevarchar100配置参数称valuevarchar100配置参数值(17)食材分类shicaifenlei上面写着“食材分类shicaifenlei”这一行字,上面写着各种食材的名称和名称。表4.17中列出了原料分类的结构。表4.17食材分类表字段名称类型长度字段说明主键默认值idbigint主键主键addtimetimestamp创建时间CURRENT_TIMESTAMPshicaifenleivarchar50食材分类(18)食谱分类shipufenlei“食谱分类shipufenlei”是用来记录食谱分类的信息。食谱分类的结构如表4.18所示。表4.18食谱分类字段名称类型长度字段说明主键默认值idbigint主键主键addtimetimestamp创建时间CURRENT_TIMESTAMPshipufenleivarchar50食谱分类(19)在线咨询chat“在线咨询chat”用于为您提供在线咨询服务。咨询的架构见表4.19。表4.19在线咨询表字段名称类型长度字段说明主键默认值idbigint主键主键addtimetimestamp创建时间CURRENT_TIMESTAMPuseridbigint用户idadminidbigint管理员idasklongtext4294967295提问replylongtext4294967295回复isreplyint是否回复(20)膳食记录shanshijilu“膳食记录shanshijilu”,用来保存饮食记录信息。表4.20列出了膳食记录的组成。表4.20膳食记录表字段名称类型长度字段说明主键默认值idbigint主键主键addtimetimestamp创建时间CURRENT_TIMESTAMPbiaotivarchar50标题zaocanlongtext4294967295早餐wucanlongtext4294967295午餐wancanlongtext4294967295晚餐dengjishijiandate登记时间beizhulongtext4294967295备注zhanghaovarchar30账号xingmingvarchar30姓名(21)食材信息shicaixinxi本栏的名为“食材信息shicaixinxi”。表4.21列出了食材信息的组成。表4.21食材信息表字段名称类型长度字段说明主键默认值idbigint主键主键addtimetimestamp创建时间CURRENT_TIMESTAMPshicaibianhaovarchar30食材编号shicaimingchengvarchar30食材名称shicaifenleivarchar30食材分类fengmianlongtext4294967295封面chandivarchar30产地shengchanriqidate生产日期baozhiqivarchar20保质期shicaigongxiaolongtext4294967295食材功效shicaixiangqingvarchar30食材详情clicktimedatetime最近点击时间clicknumint点击次数0pricefloat价格(22)购物车表cart“购物车表cart”记录新添加的购物车内容。购物车表的结构呈现于表4.22所示。表4.22购物车表字段名称类型长度字段说明主键默认值idbigint主键主键addtimetimestamp创建时间CURRENT_TIMESTAMPtablenamevarchar20商品表名shicaixiniuseridbigint用户idgoodidbigint商品idgoodnamevarchar20商品名称picturelongtext4294967295图片buynumberint购买数量pricefloat单价discountpricefloat会员价第5章系统实现5.1登录注册当用户使用系统时,当点击注册时,会自动到用户注册页,填写账户,输入密码,再次确认,填写必要的资料,选择图片上传为头像,如图5.1;用户登录时,需要填写账号和密码,选择用户角色,点“登录”。在没填使用者名称或密码的情况下,要填使用者名称和密码,如图5.2;管理员登录后台管理系统时,填写录入的用户名和密码后,页面会到后台管理页。填的名称或密码有误的话,会有提示,如图5.3。图5.1用户注册界面图5.2用户登录界面图5.3后台登录界面管理员在后台的登录页,填自己的账号、密码,选择登录角色,点“登录”跳转到系统页,此为管理员登录。如图5.4所示。图5.4管理员登录成功界面注册用户填账号、密码、等信息后点“注册”会有“注册成功”提示,若无则注册失败。如图5.5所示。图5.5用户注册成功界面用户在登录页填写信息,选择登录角色,点“登录”会到主页,若不是则失败。如图5.6所示。图5.6用户登录成功界面实现该功能的关键代码如下:@RestController@RequestMapping("/yonghu")publicclassYonghuController{@AutowiredprivateYonghuServiceyonghuService;@AutowiredprivateTokenServicetokenService;/***登录*/@IgnoreAuth@RequestMapping(value="/login")publicRlogin(Stringusername,Stringpassword,Stringcaptcha,HttpServletRequestrequest){YonghuEntityu=yonghuService.selectOne(newEntityWrapper<YonghuEntity>().eq("zhanghao",username));if(u==null||!u.getMima().equals(password)){returnR.error("账号或密码有误");}Stringtoken=tokenService.generateToken(u.getId(),username,"yonghu","用户");returnR.ok().put("token",token);}/***注册*/@IgnoreAuth@RequestMapping("/register")publicRregister(@RequestBodyYonghuEntityyonghu){//ValidatorUtils.validateEntity(yonghu); YonghuEntityu=yonghuService.selectOne(newEntityWrapper<YonghuEntity>().eq("zhanghao",yonghu.getZhanghao())); if(u!=null){ returnR.error("注册用户已存在"); } LonguId=newDate().getTime(); yonghu.setId(uId);yonghuService.insert(yonghu);returnR.ok();}5.2食谱信息用户进入系统先看到系统的首页简介,点每日食谱,用户能在本页中阅览食谱图片和信息。如图5.7、5.8、5.9所示:图5.7每日食谱界面用户登录系统后,进入到每日食谱的界面,点击选择食谱名称,可以实现对食谱信息的查看,根据自己的需求选择,食谱信息的界面如图5.8所示。图5.8食谱信息界面图5.9食谱分类界面实现该功能的关键代码如下:*/@RequestMapping("/query")publicRquery(MeirishipuEntitymeirishipu){EntityWrapper<MeirishipuEntity>ew=newEntityWrapper<MeirishipuEntity>(); ew.allEq(MPUtil.allEQMapPre(meirishipu,"meirishipu")); MeirishipuViewmeirishipuView=meirishipuService.selectView(ew); returnR.ok("查询每日食谱成功").put("data",meirishipuView);}5.3食材信息以用户身份登录到系统中,进入食材信息界面,点击并查看其中某个食材的详细信息界面,在该界面还可以根据自己的的喜好进行收藏操作,在最上面一栏还能根据自己的需要根据关键字对食材搜索、管理员对食材的修改界面如图5.10、5.11:图5.10食材信息界面图5.11食材信息管理界面实现该功能的关键代码如下:@RequestMapping("/save")publicRsave(@RequestBodyShicaixinxiEntityshicaixinxi,HttpServletRequestrequest){shicaixinxi.setId(newDate().getTime()+newDouble(Math.floor(Math.random()*1000)).longValue()); //ValidatorUtils.validateEntity(shicaixinxi);shicaixinxiService.insert(shicaixinxi);returnR.ok();}5.4膳食活动用户进入系统后,进入膳食活动界面,可以查看某一个活动的详细信息,也可以在系统最上面一栏,对活动进行查找,查看或收藏某一活动,还可以参加报名感兴趣的活动上传自制食谱如图5.12、5.13、5.15所示,膳食活动后台管理如图5.14、5.16:图5.12膳食活动界面图图5.13活动详情界面图5.14膳食活动管理界面图5.15膳食活动报名界面图5.16膳食活动报名管理界面实现该功能的关键代码如下:@RequestMapping("/lists")publicRlist(ShanshihuodongEntityshanshihuodong){ EntityWrapper<ShanshihuodongEntity>ew=newEntityWrapper<ShanshihuodongEntity>(); ew.allEq(MPUtil.allEQMapPre(shanshihuodong,"shanshihuodong"));returnR.ok().put("data",shanshihuodongService.selectListView(ew));}5.5食谱分享以用户身份登录到系统中,进入系统界面后,点“食谱共享”,就能看全部用户共享的食谱信息,并可共享自己的食谱。食谱分享界面如图5.17、5.18所示图5.17食谱分享界面图5.18食谱分享管理界面实现该功能的关键代码如下:@RequestMapping("/page")publicRpage(@RequestParamMap<String,Object>params,ShipufenxiangEntityshipufenxiang, HttpServletRequestrequest){ StringtableName=request.getSession().getAttribute("tableName").toString(); if(tableName.equals("yonghu")){ shipufenxiang.setZhanghao((String)request.getSession().getAttribute("username")); }EntityWrapper<ShipufenxiangEntity>ew=newEntityWrapper<ShipufenxiangEntity>(); PageUtilspage=shipufenxiangService.queryPage(params,MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew,shipufenxiang),params),params));returnR.ok().put("data",page);}5.6通知公告以用户身份登录到系统中,进入到通知公告界面,可以查看到所有系统发布的通知公告,也可以对某一公告内容进行查看,最上面有滚动图片公告。通知公告界面如图5.19,管理员可以对通知进行修改如图5.20:图5.19通知公告界面图5.20通知公告管理界面实现该功能的关键代码如下://详情@RequestMapping("/query")publicRquery(NewsEntitynews){EntityWrapper<NewsEntity>ew=newEntityWrapper<NewsEntity>(); ew.allEq(MPUtil.allEQMapPre(news,"news")); NewsViewnewsView=newsService.selectView(ew); returnR.ok("查询通知公告成功").put("data",newsView);}5.7在线咨询以用户身份登录到后台系统中,点击在线咨询的模块,进而弹出了在线咨询的界面,用户可以通过此窗口进行在线的咨询该界面可以新增或删除资料分类。在线咨询界面如图5.21,管理员回复界面如图5.22:图5.21在线咨询界面图5.22在线咨询管理界面实现该功能的关键代码如下:@RequestMapping("/lists")publicRlist(ChatEntitychat){ EntityWrapper<ChatEntity>ew=newEntityWrapper<ChatEntity>(); ew.allEq(MPUtil.allEQMapPre(chat,"chat"));returnR.ok().put("data",chatService.selectListView(ew));}5.8购物车以用户身份登录到系统中,点购物车模块,进入购物车管理页,也能在这到看购物车中有什么东西,也能管理自己的订单和收藏的食谱等。如图5.23、5.24,后台管理员也能管理用户的订单如图5.25:图5.23购物车订单界面图5.24收藏管理界面图5.25用户订单管理界面实现该功能的关键代码如下: @IgnoreAuth@RequestMapping("/list")publicRlist(@RequestParamMap<String,Object>params,OrdersEntityorders, HttpServletRequestrequest){EntityWrapper<OrdersEntity>ew=newEntityWrapper<OrdersEntity>(); PageUtilspage=ordersService.queryPage(params,MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew,orders),params),params));returnR.ok().put("data",page);}5.9后台管理作为管理员,登录后台系统,在此界面用户可以对体检报告、活动报名、食谱分享、膳食记录进行管理还能够修改密码。后台管理界面如图5.26、5.27、5.28、5.29所示:图5.26后台管理界面图5.27体检报告查看界面图5.28膳食记录查看界面图5.29膳食记录管理界面实现该功能的关键代码如下:@RequestMapping("/page")publicRpage(@RequestParamMap<String,Object>params,HuodongbaomingEntityhuodongbaoming, HttpServletRequestrequest){ StringtableName=request.getSession().getAttribute("tableName").toString(); if(tableName.equals("yonghu")){ huodongbaoming.setZhanghao((String)request.getSession().getAttribute("username")); }EntityWrapper<HuodongbaomingEntity>ew=newEntityWrapper<HuodongbaomingEntity>(); PageUtilspage=huodongbaomingService.queryPage(params,MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew,huodongbaoming),params),params));returnR.ok().put("data",page);}

第6章系统测试软件测试是项技术性很强的任务,其质量直接影响软件未来的性能。因此,为了识别软件中潜在的缺点毛病,明确软件的设计和实现满不满足用户要求,使软件在用户使用中特别舒适,使系统运行平稳。黑盒测试是对系统所有模块运行进行测试的一种常用方法。在黑箱实验中会用到非对称性和边界值分析法。在输入量和输出量的分界线上,误差比在分界线上大得多,这是因为这种边界值分析法是在确定输入、输出的范围之后选择边界值来测试整个系统,进而对整个系统运行的稳定性和可靠性做进一步探究。6.1测试步骤单元,集成,验证三个主要的系统测试步骤:(1)单元测试是一个简单而实用的测试系统。在此基础上,对该模块的功能进行了验证,并对其相应的功能操作进行了验证。(2)在一个模块被安装之后,集成测试就成为了一种完整的系统,它能够对模块间的界面和通讯进行检测,并对与设计有关的程序结构进行检测。(3)验证测试就是为了确保系统配置的正确性,在对需求进行分析时,用户所需要的是相同的。6.2测试用例6.2.1登录测试用例本文根据用户的要求,采用了黑盒测试技术,列举了几个典型的测试用例,如表6.1所示。表6.1登录测试用例表测试编号测试目的操作步骤预期结果实际结果001登录测试输入正确的用户名和密码登录成功登录成功002登录测试输入错误的用户名登录失败登录失败003登录测试输入错误的密码登录失败登录失败图6.1登录成功测试用例图6.2登录失败测试用例6.2.2食谱管理测试用例管理端在运行时要满足浏览器的运行需求,比如添加食谱信息测试、修改食谱信息测试、删除食谱信息测试等。本节根据管理端模块进行测试,因考虑到本文篇幅有限,这里代表性的部分测试用例,如表6.2所示。表6.2食谱管理测试用例表测试编号测试目的操作步骤预期结果实际结果001添加食谱信息测试在添加页面输入食谱信息,点击确认按钮添加成功添加成功002修改食谱信息测试在修改页面修改食谱信息,点击确认按钮修改成功修改成功003删除食谱信息测试在管理食谱信息页面,点击用户的删除按钮删除成功删除成功004查询食谱信息测试在管理食谱信息页面查询输入框输入要查询的用户名字,点击查询按钮查询成功查询成功图6.3添加食谱成功测试用例图6.4删除食谱成功测试用例6.2.3食谱收藏测试用例在食谱页面,在详细页中点“收藏”按钮,此时上方它会提示收藏成功的绿色提示框。表6.3食谱收藏测试用例表测试编号测试目的操作步骤预期结果实际结果001收藏食谱测试在食谱信息页面点击收藏按钮收藏成功收藏成功002取消收藏食谱测试在食谱信息页面点击取消收藏按钮取消成功取消成功图6.5食谱收藏测试用例6.2.4食谱评论测试用例进入菜谱页,在菜谱详细页中输留言,点提交,会有留言成功提示,该用户的评论就会显示在这个食谱详情评论的下方。表6.4食谱评论测试用例表测试编号测试目的操作步骤预期结果实际结果001食谱评论测试在评论区输入评论内容点击立即提交评论成功评论成功图6.6食谱评论成功测试用例图6.7食谱评论测试用例6.2.5活动报名测试用例进到活动报名页,点活动报名,就能到填写信息的页,填写后提交,在屏幕的顶部就会有成功提示,接着就可以进入到后台的管理页,管理员可以看到用户的报名信息待审核。表6.5活动报名测试用例表测试编号测试目的操作步骤预期结果实际结果001膳食活动报名测试在活动页面输入完整的信息,点击提交提交成功提交成功002膳食活动报名测试在活动页面不输完整的信息,点击提交提交失败提交失败图6.8活动报名测试用例图6.9活动报名后台测试用例6.2.6购物车测试用例当你在其它模块中加入了购物车之后,你可以看到你所加入的物品,然后点击“点击购买”,就会进入到你想要的物品的付款页面,当你确定了你想要的东西之后,你就可以开始付款了,付款结束时,会收到一条消息,显示你已经付款。表6.6购物车测试用例表测试编号测试目的操作步骤预期结果实际结果001添加食材到购物车测试在食材信息页面点击加入购物车添加成功添加成功002购买食材测试在购物车页面点击所需食材,再点击购买购买成功购买成功图6.10购物车测试用例图6.11购物车测试用例6.2.7余额充值测试用例在“个人中心”里点“充值”的选项,然后点“点我充值”,就会到一个充值页,结合自己的需求,选择充值的方式和金额,再点确定,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论