论文部分内容阅读
如今人们越来越重视饮食健康。而由于工作的繁忙又无暇过多研究考虑饮食搭配问题或咨询专业的营养师,因此对于快捷、方便、准确、有效的咨费低廉的配餐系统的需求越来越强烈,越来越多的营养配餐系统随即出现。现有的配餐系统鲜见配餐功能,而多数是在现有食谱中进行选择的选餐系统。系统中餐点不具有针对性,对营养测评结果的利用不充分,不能自主选择食材生成食谱;另由于未考虑食材对不同体质人群健康影响不同,在食材选择时并未考虑人体体质因素使食谱存在食用健康甚至安全问题。现有的营养配餐系统大多是采用C/S结构或B/S结构开发的。C/S结构的系统不易于信息传播,服务严重受限;而B/S结构系统若采用数据访问层代码与表示层代码和算法混编的方法构建,会使得网站功能扩展困难且难以维护,开发工作中不断进行大量重复工作。针对以上问题,本文作者设计并实现了基于MVC模式中Struts框架的B/S结构营养配餐系统,讨论在系统中采用Struts框架组织系统结构,设计实现了以体质类型为食材筛选依据并自动配制生成食谱的算法。主要完成以下五个方面的工作:1.研究分析了现有配餐系统,简要介绍struts框架的系统组成结构。调查研究了现有配餐系统的实际功能、配餐算法以及所采用的系统结构,总结其中有待改进的地方;研究Struts框架的结构特点以及采用J2EE开发系统的优势。2.分析配餐系统的实际需求及系统构架。通过对用户的实际需求进行分析,确定网站结构以及用户访问流程,并根据各页面中所需提供的功能;依照Struts框架将系统文件分为JSP页、ActionForm类对象和Action类对象、java程序;拟定Controller连接Model与View。3.深入研究用户体质与用户症状、体质与食材的之间的关系;以关系结构表示并存储三者关系以及相关知识。现有的《人体所需各类营养素含量表》以及《各类食材包含营养素含量表》提供了对食材需求的量的关系,而人依照不同体质对食材有着质的需求。人体表现症状综合则体现了对体质的支持,因此症状与食材之间则存在了有条件的支持或否定的不确定性的关系。文中以体质作为中间项将这种不确定的关系转化为可以用支持度来衡量的确定性关系,而将食材与人体体质类型关系转化为食材属性进行存储,以便于筛选及选取。明确食材、餐点和食谱三者之间的关系。为实现配餐构建合理的数据组织结构。最终选用Oracle10g设计实现数据库。4.设计算法以实现用户体质测评功能、食材筛选功能以及配置生成食谱功能。体质测评算法采用问卷方法采集用户症状,生成病历;提取各症状对体质类型的支持度,通过统计高支持度症状个数是否满足要求,来判定用户体质类型并存档。食材筛选是配餐的前提,依据用户的体质类型,采用排除法排除确定以及不确定有损健康的食材;在食材筛选基础上,按用户录入的配餐需求采用随机函数按类别随机抽取食材以及烹调方式,组成餐点组建食谱。5.采用Tomcat作为Web应用服务器,测试运行营养配餐系统。文中配餐系统的实现,达到依据用户选择判断用户体质类型并据此自动配餐的效果,满足了用户的快速获取安全多样的食谱需求。证明了采用Struts框架构建的MVC模式的配餐系统结构清晰,便于维护与改进。