摘 要
本文设计并实现了一款综合性的美食食谱分享平台,该平台集成了美食资讯、食谱分享与交流等多种功能,为用户提供多元化且高质量的美食内容与互动体验。技术层面,平台采用SSM框架构建,并实施了前后端分离的开发策略。前端运用了先进的Web技术,精心设计了动态用户界面,以优化用户体验;后端则基于Spring框架建立了安全稳定的服务端,支持RESTful API接口,确保数据的高效与安全传输。
平台的主体架构包含首页、美食论坛、个人中心、美食功能模块、在线客服系统及管理员后台等多个核心组成部分。首页集中展示了美食资讯、食谱信息和美食分享等内容,便于用户快速获取所需信息;美食论坛为用户提供了交流美食心得、分享烹饪经验的平台;个人中心允许用户管理个人信息、收藏食谱及查看评论记录等;美食功能模块则涵盖了丰富的食谱资源、最新的美食资讯及便捷的分享功能;在线客服系统能为用户提供即时的咨询支持;管理员后台则负责全面的网站运营管理,包括用户信息管理、食谱分类与信息管理、美食分享内容审核、公告发布、资源管理、留言处理及论坛监控等。
通过该平台,用户可以轻松浏览、搜索并收藏各类食谱,分享个人美食制作经验与成果,与其他美食爱好者进行深入的互动交流。同时,管理员能够有效管理网站内容及用户信息,维护平台的良好秩序与积极氛围。该平台已在多个美食分享社区成功部署,并获得了广泛的市场认可与积极的社会效益。
本设计创新性地将美食分享与现代信息技术相结合,提出了一个具有前瞻性的解决方案,对推动美食行业的数字化转型具有重要意义。此外,该项目的实施不仅积累了宝贵的技术开发经验,也深化了对互联网+美食服务模式的理解,为后续相关研究提供了坚实的理论与实践基础。
关键词:美食分享平台;Java语言;SSM框架;MySQL数据库
Abstract
This article designs and implements a comprehensive food recipe sharing platform, which integrates various functions such as food information, recipe sharing and communication, aiming to provide users with diversified and high-quality food content and interactive experience. On the technical level, the platform is built using the SSM framework and implements a front-end and back-end separation development strategy. The front-end utilizes advanced web technology and carefully designs a dynamic responsive user interface to optimize the user experience; The backend has established a secure and stable server based on the Spring framework, supporting RESTful API interfaces to ensure efficient and secure data transmission.
The main architecture of the platform includes multiple core components such as the homepage, food forum, personal center, food function module, online customer service system, and administrator backend. The homepage displays food information, recipe information, and food sharing, making it easy for users to quickly access the information they need; The food forum provides users with a platform to exchange food experiences and share cooking tips; The personal center allows users to manage personal information, collect recipes, and view comment records; The food function module covers rich recipe resources, the latest food information, and convenient sharing functions; The online customer service system can provide users with instant consultation and support; The administrator backend is responsible for comprehensive website operation and management, including user information management, recipe classification and information management, food sharing content review, announcement publishing, resource management, message processing, and forum monitoring.
Through this platform, users can easily browse, search, and bookmark various recipes, share their personal culinary experience and achievements, and engage in in-depth interactive communication with other food enthusiasts. At the same time, administrators can effectively manage website content and user information, maintaining a good order and positive atmosphere on the platform. The platform has been successfully deployed in multiple food sharing communities and has gained widespread market recognition and positive social benefits.
This design innovatively combines food sharing with modern information technology, proposing a forward-looking solution that is of great significance for promoting the digital transformation of the food industry. In addition, the implementation of the project has not only accumulated valuable experience in technology development, but also deepened the understanding of the Internet plus food service model, providing a solid theoretical and practical basis for subsequent research.
Keywords: food sharing platform; Java language; SSM framework; MySQL database
1 前 言
1.1 选题背景
1.2 研究意义
1.3 国内外研究现状
1.4 主要研究内容
2 关键技术
2.1 Java语言
2.2 MySQL数据库
2.3 SSM框架
2.4 B/S模式
3 系统分析
3.1 可行性分析
3.2 功能需求分析
3.3 系统性能分析
3.4 平台流程分析
3.4.1 程序操作流程
3.4.2 登录流程
4 平台设计
4.1 总体设计
4.1.1 框架设计
4.1.2 功能模块设计
4.2 数据库设计
4.2.1 实体用例及E-R图
4.2.1 数据库表结构设计
5 系统实现
5.1 注册用户模块
5.2 管理员模块
6 系统测试
6.1 测试环境与工具
6.2 测试用例
6.3 性能测试
6.4 测试结果
7结 论
参考文献
致 谢
近年来,随着人们生活质量的飞速提升,对食物的需求层次已超越基本的生理满足,转而深入至对味道的享受、营养的追求以及文化韵味的品味。美食文化悄然成为一股时尚潮流,引领着更多人迈向高品质生活体验,他们乐此不疲地在各种新奇菜肴中探索与尝试。在此背景下,本课题着手研究,借助现代科技力量,精心构建一个综合性的美食食谱分享平台。该平台广泛网罗全国各地乃至全球的美食资讯,力求促进美食文化在多元地域间的深入交流与广泛流通,同时,也为用户带来耳目一新的使用感受。
设计并实现美食食谱分享平台的核心目的在于利用信息化与自动化技术,解决传统美食交流与分享模式中的诸多不足,从而提升用户体验和社区互动的质量。通过这一集成化系统,用户能够方便地学习各种烹饪技巧、探索丰富的食谱资源,并增加饮食的多样性以满足不同的健康需求。平台不仅提供了展示和分享个人作品的空间,还促进了用户之间的交流与互动,增强了社区归属感。此外,系统内置的记录确保了地方特色菜和传统美食文化的保存与传承,为后代留下了宝贵的文化遗产。通过对用户行为和偏好数据的深度分析,管理层可以精准了解市场需求和趋势,为优化服务和内容提供有力支持。同时,该平台严格遵循相关规范与标准,确保信息的真实性和可靠性,助力构建一个健康、和谐且多元化的美食文化交流环境,推动整个行业的可持续发展。总之,美食食谱分享平台在提升个人技能、促进文化交流、传承饮食文化以及推动社交媒体多元化方面发挥了重要作用。
随着互联网技术的飞速发展,美食食谱分享平台已成为连接全球美食爱好者的桥梁,不仅为人们提供了获取烹饪灵感、交流饮食文化的便捷渠道,也成为了学术界深入研究的热点。近年来,国内外学者在这一领域展开了丰富的研究,涵盖了技术创新、推荐算法优化、用户体验提升以及社会文化影响等多个维度。
在国内,技术创新是推动美食食谱分享平台发展的关键因素。例如,马铭华在2023年的研究中,介绍了如何利用微信小程序这一轻量级应用,实现贵州美食文化的广泛传播[1]。该系统集成了地图定位、导航、搜索及美食推荐等多功能于一体,为用户提供了极大的便利。同时,李凯在2022年提出了PMFUP美食推荐模型,该模型通过融合多源信息,能够更准确地捕捉用户的个性化需求,从而提高了推荐系统的性能[2]。这些技术创新不仅提升了平台的用户体验,也为美食文化的传播提供了更广阔的空间。
在推荐算法方面,国内学者同样取得了显著的成果。邓涵兮与陈志华于2022年开发了一种基于网络评论的美食推荐系统,该系统利用先进的文本处理技术,实现了对用户评价的深入分析,进而提供了更加个性化的推荐服务[3]。而刘子豪和闭祖松等人在同年提出的大数据食谱推荐系统,则强调了通过大数据分析来优化用户推荐体验的重要性[4]。这些推荐算法的应用,使得美食食谱分享平台能够更好地满足用户的个性化需求,提升了平台的竞争力。
有效的平台管理和运营对于美食食谱分享平台的成功至关重要。李亚君在2022年的研究中,展示了如何运用ASP.NET技术和MVC设计模式构建高效的美食商城后台管理系统,确保了平台的稳定运行和大量商品信息的有效管理[5]。杨旭东则在2023年针对校园餐饮环境设计了一套菜品推荐系统,该系统能够根据学生的饮食习惯和偏好提供个性化的菜单选择,有效提高了用户的满意度[6]。这些研究为美食食谱分享平台的运营和管理提供了有益的参考。
美食不仅仅是味觉上的享受,它还承载着丰富的社会文化意义。刘娜在2024年的研究中指出,以大众点评App为例,数字美食平台已经成为连接线上线下美食体验的重要桥梁,促进了不同空间之间的互动与交流。她认为,未来的美食研究应当更加注重数字传播对美食文化发展的影响,探索如何利用数字工具促进美食文化的传承与发展[7]。这一观点为美食食谱分享平台在社会文化影响方面的研究提供了新的思路。
在国外,美食食谱分享平台同样在促进全球美食文化交流与传播方面发挥了重要作用。从历史的角度来看,食谱书一直是文化交流的重要载体。2024年,Peters S K和Helga M对近代早期(约1500-1800年)的食谱书进行了深入研究,涵盖了多个地区的食谱书,详细探讨了这些食谱书的物质特性及其使用情况,分析了食谱收集的模式及其随时间的演变[8]。这项研究不仅揭示了历史上食谱书在不同文化中的角色,也为现代食谱分享平台的发展提供了宝贵的历史参考。
进入现代社会,互联网技术的发展极大地改变了人们获取和分享食谱的方式。2022年,D P J G、A C M、Rashelle H等人在对Pinterest这一流行的社交媒体平台的研究中发现,Pinterest不仅是一个内容分享平台,更是用户参与美食创作和家庭饮食行为的重要场所[9]。用户通过Pinterest获取食谱信息,积极参与家庭饮食规划,这有助于培养健康的饮食习惯。这一研究揭示了现代社交媒体平台在美食文化传播和饮食习惯培养方面的重要作用。
综上所述,国内外美食食谱分享平台的研究已经涵盖了从技术创新、推荐算法优化、用户体验提升到社会文化影响等多个维度。未来,随着技术的应用,美食分享平台将更加个性化,更好地服务于广大用户,推动美食文化的传承与发展。无论是国内还是国外,美食食谱分享平台都将成为连接美食爱好者、促进文化交流的重要平台。
随着生活水平提升,人们对美食的追求日益增长。美食食谱分享平台应运而生,满足用户获取烹饪灵感、交流饮食文化及展示个人烹饪才华的需求。该平台需支持用户注册登录、查看搜索食谱、上传食谱及参与美食论坛等功能,同时为管理员提供用户、食谱分类、食谱信息、网站公告、论坛、评论及客服等后台管理功能。
技术方面,平台采用Java语言开发,因其跨平台、面向对象、安全稳定,适合大型企业级应用。框架选用SSM,其中Spring提供基础设施支持,Spring MVC处理Web层请求,MyBatis负责数据持久层操作。数据库则采用高性能、高可靠性、易用的MySQL,适合存储管理大量用户及业务数据。
系统功能分为用户和管理员两大模块。用户模块涵盖注册登录、首页浏览、公告查看、食谱信息管理、上传食谱及参与论坛等功能;管理员模块则包括后台首页展示、用户及食谱分类信息管理、公告管理、论坛管理、评论管理及客服管理等功能。
数据库设计是系统设计的关键,需根据功能需求设计合理的表结构,如表用户、食谱、食谱分类、公告、论坛及评论等。用户表存储账号、密码、昵称、头像及注册时间等信息;食谱表存储标题、作者、分类、内容及发布时间等信息。同时,需设计合理的表间关系,如用户与食谱的收藏关系、用户与评论的发表关系等,以确保系统功能的完整性和数据的准确性。
综上所述,美食食谱分享平台的设计需要从需求分析出发,制定合理的技术方案设计、功能设计和数据库设计,以满足用户的需求和保证系统的稳定运行。
Java是一种跨平台的编程语言,广泛用于开发各种类型的应用程序,包括Web应用、移动应用和大型软件系统。在美食食谱分享平台中,Java通常用于后端开发,提供强大的处理能力和稳定性[10]。同时Java是一种面向对象的编程语言,支持封装、继承和多态等特性,使代码更易于维护和重用。还拥有丰富的标准库和第三方框架,Spring、Hibernate等,可以大大提高开发效率。
MySQL是一种流行的开源关系型数据库管理系统,用于存储和管理数据。在美食食谱分享平台中,MySQL可以用于数据存储、数据查询和数据管理等方面,用户可以免费使用和修改源代码,为平台提供可靠和高性能的数据库支持[11]。MySQL支持多种存储引擎,可以根据不同的应用场景选择合适的存储引擎,以提高性能;提供了多种数据安全机制,如用户权限管理、数据加密和备份恢复等,确保数据的安全性[12]。
通过SSM框架,实现了美食食谱分享平台的高效开发与部署。Spring框架提供了依赖注入和面向切面编程的支持,简化了业务逻辑的管理和测试。Spring MVC作为Web框架,实现了灵活的请求处理与页面渲染,提升了用户的交互体验。MyBatis作为持久层框架,优化了与MySQL数据库的交互,实现了高效的数据访问与管理。这些特性与优势共同支撑了系统的稳定性与性能优化[13]。
B/S模式(Browser/Server模式)是一种网络应用架构,其中浏览器(Browser)作为客户端与服务器进行通信。这种模式使用户可以通过普通的Web浏览器访问应用程序,而无需安装额外的客户端软件。用户通过浏览器发送请求,服务器接收并处理这些请求,然后将结果返回给浏览器显示给用户。在美食食谱分享平台中,结合B/S模式的优势包括跨平台的兼容性,用户可以在不同操作系统和设备上访问应用程序。此外,维护和部署也更为简便,并且能够实现较高的安全性,因为服务器端控制了应用程序和数据的访问权限。
- 系统分析
从技术角度来看,采用SSM框架构建美食食谱分享平台具备显著优势。SSM作为轻量级且快速构建的Java框架,能显著提升开发效率,简化系统复杂度,便于后续的维护与升级。同时,MySQL关系型数据库的支持,确保了平台数据的稳健存储与高效管理。综上所述,技术层面的可行性得以确立。
-
-
- 经济可行性
-
从经济角度来看,SSM框架的开源特性大幅降低了开发成本,而MySQL数据库的成本效益同样显著。此外,平台简洁直观的用户界面设计,有助于吸引并留住用户,进而提升平台的商业价值,为商业合作、广告推广等多元收入来源奠定基础。因此,经济层面的可行性同样明确。
-
-
- 操作可行性
-
从操作角度来看,SSM框架的简洁性与高度集成特性使得系统部署与运行变得相对简便,维护与管理成本随之降低。同时,以网页为主要操作入口的设计,优化了用户体验,提高了用户的参与度与留存率。这充分证明了操作层面的可行性。
-
-
- 社会可行性
-
美食食谱分享平台通过信息化管理手段,不仅满足了现代用户对于美食分享与交流的需求,还提升了服务效率与质量。其强大的适应性与推广价值,使得平台能够在优化资源配置、降低运营成本的同时,显著提升用户满意度。因此,社会层面的可行性同样不容忽视。
综合来看,该系统的设计与实现在经济、技术、操作、社会等方面都具有较高的可行性,能够为用户提供便捷的服务。
美食食谱分享平台为用户提供一个集食谱查询、分享、交流于一体的综合性平台,同时满足管理员对平台内容、用户及论坛的高效管理。以下是平台的功能需求分析:
-
-
- 注册用户
-
注册登录:新用户能够通过注册页面填写必要信息(如用户名、密码、邮箱、菜系偏好等)完成注册。注册后的用户可以使用注册的账号和密码登录平台。
首页:用户能够在首页查看导航栏、推荐的食谱信息和菜谱信息。系统能够根据用户的菜系偏好或历史浏览记录智能推荐菜谱。
美食论坛:用户可以在论坛发表内容,如美食分享、心得体会等。可以查看论坛列表中某个美食信息的详情,并进行点赞、收藏和评论;还可以回复其他用户的评论信息,实现互动交流。
网站公告:用户能够查看系统发布的网站公告、关于我们、联系方式、网站介绍等信息。
食谱信息:用户可以查看所有食谱信息的列表,并点击查看某个食谱的详情。并对食谱进行点赞、收藏和评论操作。该模板支持关键字搜索、局部搜索、分类搜索等多种搜索方式。
上传食谱:用户可以在线上传自己的食谱信息,并选择合适的类别进行上传。还可以对上传的食谱进行编辑和修改。
在线客服:首页提供在线客服功能,用户可以进行投诉反馈或咨询。
美食资讯:用户可以看到关于美食的各种内容、动态和信息,有美食的发现、制作、品尝以及与之相关的内容,还可以上传分享美食的丰富内容。
我的:用户可以通过点击“我的账户”进入个人信息管理页面,修改个人信息和登录密码。点击“个人中心”查看和管理个人首页、美食论坛和收藏信息。通过点击“退出”按钮退出系统登录。
注册用户角色用例如下图所示。

图3-1注册用户用例图
-
-
- 管理员
-
后台首页:管理员能够查看后台首页展示的相关内容,了解平台整体运营情况。
用户管理:管理员能够查看系统用户列表,并查看某个用户的详情。管理员能够对用户信息进行增删改查操作,以维护平台用户信息的准确性和完整性。
食谱分类管理:管理员能够添加新的食谱分类信息,如按照菜系、菜品类型等进行分类。对已有的食谱分类信息进行查询、修改或删除操作。
食谱信息管理:管理员能够对食谱信息进行增删改查操作,以满足平台内容更新的需求。管理员需要对用户上传的食谱信息进行审核,确保食谱的准确性和合规性。
网站公告管理:管理员能够对已经存在的网站公告进行修改或删除。还可以添加新的网站公告信息,及时通知用户平台动态。
美食分享管理:管理员查看用户在线发表论坛内容,如美食分享或发表心得等。
审核用户发表的美食分享或发表心得等。
留言管理:管理员需要对用户发表的评论进行审核和编辑,确保评论内容的合规性和积极性。管理员需要对用户的问题或反馈进行及时回复和处理,以提升用户满意度。对于不恰当的言论,管理员可以进行删除处理。
系统管理:管理员点击“轮播图管理”菜单,可以对前台展示的轮播图进行设置。
资源管理:管理员能够查看美食论坛列表中的某个论坛详情和评论。还可以对美食论坛和论坛分类信息进行增删改查操作,以维护论坛内容的秩序和质量。
个人中心:管理员能够修改个人信息和登录密码。可以通过点击“退出”按钮退出系统登录。
管理员角色用例如下图所示。

图3-2管理员用例图
对于美食食谱分享平台的设计与实现,下面是平台性能分析表:
-
-
-
-
- 性能需求表
-
-
-
|
项目 |
内容 |
|
响应时间 |
平台对用户请求的响应时间需在500ms以内 |
|
并发用户数 |
平台需要支持1000个并发用户同时访问 |
|
吞吐量 |
平台每秒需要处理1000个请求 |
|
可用性 |
平台需要保证每月99.9%的可用性 |
|
数据安全 |
用户敏感数据需要加密存储,并支持数据库备份和恢复 |
|
数据一致性 |
平台中的数据操作需保证ACID特性,确保数据一致性 |
|
扩展性 |
平台需要支持水平扩展,能够方便地增加服务器节点以应对高请求量 |
|
可维护性 |
平台代码需要清晰易懂、结构良好,方便维护和修改 |
|
日志记录 |
平台需要记录用户操作日志、异常日志以及系统运行日志 |
|
监控报警 |
平台需要实时监控运行状态,当系统异常时能够及时发送警报通知相关人员 |
|
缓存设置 |
针对频繁使用的数据,平台需要进行合适的缓存 |
用户访问平台网站,可以选择进行注册或登录操作。注册成功后,用户可以使用注册的账号登录平台。登录后的用户可以进入平台功能界面,使用自己权限内的功能操作。程序操作流程图如下图所示。

用户访问平台的网站,进入登录页面,入其用户名和密码,后端服务接收登录请求,验证用户提供的用户名和密码是否匹配数据库中存储的信息,验证通过即可登录成功。登录流程图如下图所示。

-
-
-
-
-
- 登录流程图
-
-
-
-
B/S架构,即浏览器/服务器架构,是一种基于Web的分布式计算范式。在此架构中,应用程序的逻辑被巧妙地区分为客户端和服务器两部分。具体而言,客户端借助广泛使用的浏览器界面,进行应用访问与操作;而服务器端则肩负起业务逻辑处理、数据存储及管理的核心职责。值得一提的是,客户端无需安装特定的软件,用户仅需通过浏览器输入相应的URL地址,即可轻松访问应用程序,这一特性极大地提升了用户的使用便捷性和系统的维护效率。服务器端通常采用高性能的计算机和数据库系统,能够处理大量并发请求和复杂的业务逻辑。B/S架构的优势在于其跨平台性和易于维护性,开发者可以通过更新服务器端的代码来实现整个系统的升级和维护,而无需逐一更新客户端。

功能模块设计是系统开发过程中的重要阶段,它将系统划分为不同的模块,每个模块负责完成特定的功能或任务。美食食谱分享平台由多个功能模块组成,每个模块下又包含具体的功能操作。功能模块图如下图所示。

E-R图有助于理清系统中的数据结构和关系,为后续的数据库表结构设计提供指导。在进行数据库设计之前,首先需要先绘制实体-关系(E-R)图。E-R图将帮助我们理清业务中的实体(Entity)及它们之间的关系(Relationship),从而为后续的数据库表设计提供基础。根据前文可以得出本美食食谱分享平台拥有多个实体,在此列举主要实体,各个实体用例图及总E-R图如下图所示。

-
-
-
-
-
- 注册用户实体图
-
-
-
-

-
-
-
-
-
- 食谱信息实体图
-
-
-
-

-
-
-
-
-
- 美食分享实体图
-
-
-
-

-
-
-
-
-
- 美食盛宴实体图
-
-
-
-

在E-R图确定后,接下来可以根据实体和关系的属性设计数据库表结构。在E-R图明确了实体和它们之间的关系后,接下来可以开始设计数据库表结构。每个实体对应一个数据库表,每个属性对应表中的字段。如下列表格所示,在此列举主要数据表。
表access_token (登陆访问时长)
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
token_id |
int |
10 |
0 |
N |
Y |
临时访问牌ID | |
|
2 |
token |
varchar |
64 |
0 |
Y |
N |
临时访问牌 | |
|
3 |
info |
text |
65535 |
0 |
Y |
N | ||
|
4 |
maxage |
int |
10 |
0 |
N |
N |
2 |
最大寿命:默认2小时 |
|
5 |
create_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间: |
|
6 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间: |
|
7 |
user_id |
int |
10 |
0 |
N |
N |
0 |
用户编号: |
表article (文章:用于内容管理系统的文章)
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
article_id |
mediumint |
8 |
0 |
N |
Y |
文章id:[0,8388607] | |
|
2 |
title |
varchar |
125 |
0 |
N |
Y |
标题:[0,125]用于文章和html的title标签中 | |
|
3 |
type |
varchar |
64 |
0 |
N |
N |
0 |
文章分类:[0,1000]用来搜索指定类型的文章 |
|
4 |
hits |
int |
10 |
0 |
N |
N |
0 |
点击数:[0,1000000000]访问这篇文章的人次 |
|
5 |
praise_len |
int |
10 |
0 |
N |
N |
0 |
点赞数 |
|
6 |
create_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间: |
|
7 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间: |
|
8 |
source |
varchar |
255 |
0 |
Y |
N |
来源:[0,255]文章的出处 | |
|
9 |
url |
varchar |
255 |
0 |
Y |
N |
来源地址:[0,255]用于跳转到发布该文章的网站 | |
|
10 |
tag |
varchar |
255 |
0 |
Y |
N |
标签:[0,255]用于标注文章所属相关内容,多个标签用空格隔开 | |
|
11 |
content |
longtext |
2147483647 |
0 |
Y |
N |
正文:文章的主体内容 | |
|
12 |
img |
varchar |
255 |
0 |
Y |
N |
封面图 | |
|
13 |
description |
text |
65535 |
0 |
Y |
N |
文章描述 |
表article_type (文章分类)
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
type_id |
smallint |
5 |
0 |
N |
Y |
分类ID:[0,10000] | |
|
2 |
display |
smallint |
5 |
0 |
N |
N |
100 |
显示顺序:[0,1000]决定分类显示的先后顺序 |
|
3 |
name |
varchar |
16 |
0 |
N |
N |
分类名称:[2,16] | |
|
4 |
father_id |
smallint |
5 |
0 |
N |
N |
0 |
上级分类ID:[0,32767] |
|
5 |
description |
varchar |
255 |
0 |
Y |
N |
描述:[0,255]描述该分类的作用 | |
|
6 |
icon |
text |
65535 |
0 |
Y |
N |
分类图标: | |
|
7 |
url |
varchar |
255 |
0 |
Y |
N |
外链地址:[0,255]如果该分类是跳转到其他网站的情况下,就在该URL上设置 | |
|
8 |
create_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间: |
|
9 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间: |
表auth (用户权限管理)
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
auth_id |
int |
10 |
0 |
N |
Y |
授权ID: | |
|
2 |
user_group |
varchar |
64 |
0 |
Y |
N |
用户组: | |
|
3 |
mod_name |
varchar |
64 |
0 |
Y |
N |
模块名: | |
|
4 |
table_name |
varchar |
64 |
0 |
Y |
N |
表名: | |
|
5 |
page_title |
varchar |
255 |
0 |
Y |
N |
页面标题: | |
|
6 |
path |
varchar |
255 |
0 |
Y |
N |
路由路径: | |
|
7 |
parent |
varchar |
64 |
0 |
Y |
N |
父级菜单 | |
|
8 |
parent_sort |
int |
10 |
0 |
N |
N |
0 |
父级菜单排序 |
|
9 |
position |
varchar |
32 |
0 |
Y |
N |
位置: | |
|
10 |
mode |
varchar |
32 |
0 |
N |
N |
_blank |
跳转方式: |
|
11 |
add |
tinyint |
3 |
0 |
N |
N |
1 |
是否可增加: |
|
12 |
del |
tinyint |
3 |
0 |
N |
N |
1 |
是否可删除: |
|
13 |
set |
tinyint |
3 |
0 |
N |
N |
1 |
是否可修改: |
|
14 |
get |
tinyint |
3 |
0 |
N |
N |
1 |
是否可查看: |
|
15 |
field_add |
text |
65535 |
0 |
Y |
N |
添加字段: | |
|
16 |
field_set |
text |
65535 |
0 |
Y |
N |
修改字段: | |
|
17 |
field_get |
text |
65535 |
0 |
Y |
N |
查询字段: | |
|
18 |
table_nav_name |
varchar |
500 |
0 |
Y |
N |
跨表导航名称: | |
|
19 |
table_nav |
varchar |
500 |
0 |
Y |
N |
跨表导航: | |
|
20 |
option |
text |
65535 |
0 |
Y |
N |
配置: | |
|
21 |
create_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间: |
|
22 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间: |
表code_token
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
code_token_id |
int |
10 |
0 |
N |
Y | ||
|
2 |
token |
varchar |
255 |
0 |
Y |
N | ||
|
3 |
code |
varchar |
255 |
0 |
Y |
N |
验证码 | |
|
4 |
expire_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
失效时间 |
|
5 |
create_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间 |
|
6 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间: |
表collect (收藏)
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
collect_id |
int |
10 |
0 |
N |
Y |
收藏ID: | |
|
2 |
user_id |
int |
10 |
0 |
N |
N |
0 |
收藏人ID: |
|
3 |
source_table |
varchar |
255 |
0 |
Y |
N |
来源表: | |
|
4 |
source_field |
varchar |
255 |
0 |
Y |
N |
来源字段: | |
|
5 |
source_id |
int |
10 |
0 |
N |
N |
0 |
来源ID: |
|
6 |
title |
varchar |
255 |
0 |
Y |
N |
标题: | |
|
7 |
img |
varchar |
255 |
0 |
Y |
N |
封面: | |
|
8 |
create_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间: |
|
9 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间: |
表comment (评论)
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
comment_id |
int |
10 |
0 |
N |
Y |
评论ID: | |
|
2 |
user_id |
int |
10 |
0 |
N |
N |
0 |
评论人ID: |
|
3 |
reply_to_id |
int |
10 |
0 |
N |
N |
0 |
回复评论ID:空为0 |
|
4 |
content |
longtext |
2147483647 |
0 |
Y |
N |
内容: | |
|
5 |
nickname |
varchar |
255 |
0 |
Y |
N |
昵称: | |
|
6 |
avatar |
varchar |
255 |
0 |
Y |
N |
头像地址:[0,255] | |
|
7 |
create_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间: |
|
8 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间: |
|
9 |
source_table |
varchar |
255 |
0 |
Y |
N |
来源表: | |
|
10 |
source_field |
varchar |
255 |
0 |
Y |
N |
来源字段: | |
|
11 |
source_id |
int |
10 |
0 |
N |
N |
0 |
来源ID: |
表forum (论坛)
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
forum_id |
mediumint |
8 |
0 |
N |
Y |
论坛id | |
|
2 |
display |
smallint |
5 |
0 |
N |
N |
100 |
排序 |
|
3 |
user_id |
mediumint |
8 |
0 |
N |
N |
0 |
用户ID |
|
4 |
nickname |
varchar |
16 |
0 |
Y |
N |
昵称:[0,16] | |
|
5 |
praise_len |
int |
10 |
0 |
Y |
N |
0 |
点赞数 |
|
6 |
hits |
int |
10 |
0 |
N |
N |
0 |
访问数 |
|
7 |
title |
varchar |
125 |
0 |
N |
N |
标题 | |
|
8 |
keywords |
varchar |
125 |
0 |
Y |
N |
关键词 | |
|
9 |
description |
varchar |
255 |
0 |
Y |
N |
描述 | |
|
10 |
url |
varchar |
255 |
0 |
Y |
N |
来源地址 | |
|
11 |
tag |
varchar |
255 |
0 |
Y |
N |
标签 | |
|
12 |
img |
text |
65535 |
0 |
Y |
N |
封面图 | |
|
13 |
content |
longtext |
2147483647 |
0 |
Y |
N |
正文 | |
|
14 |
create_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间: |
|
15 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间: |
|
16 |
avatar |
varchar |
255 |
0 |
Y |
N |
发帖人头像: | |
|
17 |
type |
varchar |
64 |
0 |
N |
N |
0 |
论坛分类:[0,1000]用来搜索指定类型的论坛帖 |
|
18 |
istop |
int |
10 |
0 |
N |
N |
0 |
是否置顶 |
表forum_type (论坛分类)
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
type_id |
smallint |
5 |
0 |
N |
Y |
分类ID:[0,10000] | |
|
2 |
name |
varchar |
16 |
0 |
N |
N |
分类名称:[2,16] | |
|
3 |
description |
varchar |
255 |
0 |
Y |
N |
描述:[0,255]描述该分类的作用 | |
|
4 |
url |
varchar |
255 |
0 |
Y |
N |
外链地址:[0,255]如果该分类是跳转到其他网站的情况下,就在该URL上设置 | |
|
5 |
father_id |
smallint |
5 |
0 |
N |
N |
0 |
上级分类ID:[0,32767] |
|
6 |
icon |
varchar |
255 |
0 |
Y |
N |
分类图标: | |
|
7 |
create_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间: |
|
8 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间: |
表gourmet_feast (美食盛宴)
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
gourmet_feast_id |
int |
10 |
0 |
N |
Y |
美食盛宴ID | |
|
2 |
food_name |
varchar |
64 |
0 |
Y |
N |
美食名称 | |
|
3 |
food_category |
varchar |
64 |
0 |
Y |
N |
美食类别 | |
|
4 |
food_prices |
varchar |
64 |
0 |
Y |
N |
美食价格 | |
|
5 |
food_pictures |
varchar |
255 |
0 |
Y |
N |
美食图片 | |
|
6 |
recommended_store |
varchar |
64 |
0 |
Y |
N |
推荐店铺 | |
|
7 |
food_preparation_methods |
text |
65535 |
0 |
Y |
N |
美食做法 | |
|
8 |
delicious_food_ingredients |
text |
65535 |
0 |
Y |
N |
美食食材 | |
|
9 |
food_details |
longtext |
2147483647 |
0 |
Y |
N |
美食详情 | |
|
10 |
hits |
int |
10 |
0 |
N |
N |
0 |
点击数 |
|
11 |
praise_len |
int |
10 |
0 |
N |
N |
0 |
点赞数 |
|
12 |
collect_len |
int |
10 |
0 |
N |
N |
0 |
收藏数 |
|
13 |
comment_len |
int |
10 |
0 |
N |
N |
0 |
评论数 |
|
14 |
recommend |
int |
10 |
0 |
N |
N |
0 |
智能推荐 |
|
15 |
create_time |
datetime |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间 |
|
16 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间 |
表hits (用户点击)
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
hits_id |
int |
10 |
0 |
N |
Y |
点赞ID: | |
|
2 |
user_id |
int |
10 |
0 |
N |
N |
0 |
点赞人: |
|
3 |
create_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间: |
|
4 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间: |
|
5 |
source_table |
varchar |
255 |
0 |
Y |
N |
来源表: | |
|
6 |
source_field |
varchar |
255 |
0 |
Y |
N |
来源字段: | |
|
7 |
source_id |
int |
10 |
0 |
N |
N |
0 |
来源ID: |
表message (留言板)
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
message_id |
int |
10 |
0 |
N |
Y |
留言板ID: | |
|
2 |
user_id |
int |
10 |
0 |
N |
N |
0 |
用户ID: |
|
3 |
title |
varchar |
64 |
0 |
Y |
N |
标题: | |
|
4 |
content |
longtext |
2147483647 |
0 |
N |
N |
内容: | |
|
5 |
nickname |
varchar |
32 |
0 |
N |
N |
昵称: | |
|
6 |
avatar |
varchar |
255 |
0 |
Y |
N |
头像: | |
|
7 |
|
varchar |
125 |
0 |
Y |
N |
留言者邮箱 | |
|
8 |
phone |
varchar |
11 |
0 |
Y |
N |
留言者手机号码 | |
|
9 |
create_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间: |
|
10 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间: |
|
11 |
reply |
longtext |
2147483647 |
0 |
Y |
N |
回复 | |
|
12 |
reply_state |
tinyint |
4 |
0 |
Y |
N |
0 |
回复状态 |
表notice (公告)
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
notice_id |
mediumint |
8 |
0 |
N |
Y |
公告id: | |
|
2 |
title |
varchar |
125 |
0 |
N |
N |
标题: | |
|
3 |
content |
longtext |
2147483647 |
0 |
Y |
N |
正文: | |
|
4 |
create_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间: |
|
5 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间: |
表praise (点赞)
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
praise_id |
int |
10 |
0 |
N |
Y |
点赞ID: | |
|
2 |
user_id |
int |
10 |
0 |
N |
N |
0 |
点赞人: |
|
3 |
create_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间: |
|
4 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间: |
|
5 |
source_table |
varchar |
255 |
0 |
Y |
N |
来源表: | |
|
6 |
source_field |
varchar |
255 |
0 |
Y |
N |
来源字段: | |
|
7 |
source_id |
int |
10 |
0 |
N |
N |
0 |
来源ID: |
|
8 |
status |
bit |
1 |
0 |
N |
N |
1 |
点赞状态:1为点赞,0已取消 |
表recipe_classification (食谱分类)
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
recipe_classification_id |
int |
10 |
0 |
N |
Y |
食谱分类ID | |
|
2 |
cuisine_category |
varchar |
64 |
0 |
Y |
N |
菜系类别 | |
|
3 |
collect_len |
int |
10 |
0 |
N |
N |
0 |
收藏数 |
|
4 |
create_time |
datetime |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间 |
|
5 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间 |
表recipe_information (食谱信息)
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
recipe_information_id |
int |
10 |
0 |
N |
Y |
食谱信息ID | |
|
2 |
upload_user |
int |
10 |
0 |
Y |
N |
0 |
上传用户 |
|
3 |
recipe_name |
varchar |
64 |
0 |
Y |
N |
食谱名称 | |
|
4 |
recipe_category |
varchar |
64 |
0 |
Y |
N |
食谱类别 | |
|
5 |
recipe_difficulty |
varchar |
64 |
0 |
Y |
N |
食谱难度 | |
|
6 |
food_pictures |
varchar |
255 |
0 |
Y |
N |
美食图片 | |
|
7 |
number_of_ingredients |
double |
9 |
2 |
Y |
N |
0.00 |
食材种数 |
|
8 |
recipe_introduction |
text |
65535 |
0 |
Y |
N |
食谱简介 | |
|
9 |
recipe_ingredients |
text |
65535 |
0 |
Y |
N |
食谱食材 | |
|
10 |
recipe_preparation |
text |
65535 |
0 |
Y |
N |
食谱做法 | |
|
11 |
recipe_details |
longtext |
2147483647 |
0 |
Y |
N |
食谱详情 | |
|
12 |
hits |
int |
10 |
0 |
N |
N |
0 |
点击数 |
|
13 |
praise_len |
int |
10 |
0 |
N |
N |
0 |
点赞数 |
|
14 |
collect_len |
int |
10 |
0 |
N |
N |
0 |
收藏数 |
|
15 |
comment_len |
int |
10 |
0 |
N |
N |
0 |
评论数 |
|
16 |
examine_state |
varchar |
16 |
0 |
N |
N |
未审核 |
审核状态 |
|
17 |
recommend |
int |
10 |
0 |
N |
N |
0 |
智能推荐 |
|
18 |
create_time |
datetime |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间 |
|
19 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间 |
表registered_user (注册用户)
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
registered_user_id |
int |
10 |
0 |
N |
Y |
注册用户ID | |
|
2 |
user_name |
varchar |
64 |
0 |
Y |
N |
用户姓名 | |
|
3 |
user_gender |
varchar |
64 |
0 |
Y |
N |
用户性别 | |
|
4 |
cuisine_category |
varchar |
64 |
0 |
Y |
N |
菜系类别 | |
|
5 |
examine_state |
varchar |
16 |
0 |
N |
N |
已通过 |
审核状态 |
|
6 |
user_id |
int |
10 |
0 |
N |
N |
0 |
用户ID |
|
7 |
create_time |
datetime |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间 |
|
8 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间 |
表schedule (日程管理)
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
schedule_id |
smallint |
5 |
0 |
N |
Y |
日程ID:[0,32767] | |
|
2 |
content |
varchar |
255 |
0 |
Y |
N |
日程内容 | |
|
3 |
scheduled_time |
datetime |
19 |
0 |
Y |
N |
计划时间 | |
|
4 |
user_id |
int |
10 |
0 |
N |
N |
用户id | |
|
5 |
create_time |
datetime |
19 |
0 |
Y |
N |
创建时间 | |
|
6 |
update_time |
datetime |
19 |
0 |
Y |
N |
更新时间 |
表score (评分)
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
score_id |
int |
10 |
0 |
N |
Y |
评分ID: | |
|
2 |
user_id |
int |
10 |
0 |
N |
N |
0 |
评分人: |
|
3 |
nickname |
varchar |
64 |
0 |
Y |
N |
昵称: | |
|
4 |
score_num |
double |
5 |
2 |
N |
N |
0.00 |
评分: |
|
5 |
create_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间: |
|
6 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间: |
|
7 |
source_table |
varchar |
255 |
0 |
Y |
N |
来源表: | |
|
8 |
source_field |
varchar |
255 |
0 |
Y |
N |
来源字段: | |
|
9 |
source_id |
int |
10 |
0 |
N |
N |
0 |
来源ID: |
表sensitive_vocabulary (敏感词汇)
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
sensitive_vocabulary_id |
int |
10 |
0 |
N |
Y |
敏感词汇ID | |
|
2 |
sensitive_vocabulary |
varchar |
64 |
0 |
Y |
N |
敏感词汇 | |
|
3 |
create_time |
datetime |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间 |
|
4 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间 |
表slides (轮播图)
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
slides_id |
int |
10 |
0 |
N |
Y |
轮播图ID: | |
|
2 |
title |
varchar |
64 |
0 |
Y |
N |
标题: | |
|
3 |
content |
varchar |
255 |
0 |
Y |
N |
内容: | |
|
4 |
url |
varchar |
255 |
0 |
Y |
N |
链接: | |
|
5 |
img |
varchar |
255 |
0 |
Y |
N |
轮播图: | |
|
6 |
hits |
int |
10 |
0 |
N |
N |
0 |
点击量: |
|
7 |
create_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间: |
|
8 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间: |
表upload (文件上传)
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
upload_id |
int |
10 |
0 |
N |
Y |
上传ID | |
|
2 |
name |
varchar |
64 |
0 |
Y |
N |
文件名 | |
|
3 |
path |
varchar |
255 |
0 |
Y |
N |
访问路径 | |
|
4 |
file |
varchar |
255 |
0 |
Y |
N |
文件路径 | |
|
5 |
display |
varchar |
255 |
0 |
Y |
N |
显示顺序 | |
|
6 |
father_id |
int |
10 |
0 |
Y |
N |
0 |
父级ID |
|
7 |
dir |
varchar |
255 |
0 |
Y |
N |
文件夹 | |
|
8 |
type |
varchar |
32 |
0 |
Y |
N |
文件类型 |
表user (用户账户:用于保存用户登录信息)
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
user_id |
int |
10 |
0 |
N |
Y |
用户ID:[0,8388607]用户获取其他与用户相关的数据 | |
|
2 |
state |
smallint |
5 |
0 |
N |
N |
1 |
账户状态:[0,10](1可用|2异常|3已冻结|4已注销) |
|
3 |
user_group |
varchar |
32 |
0 |
Y |
N |
所在用户组:[0,32767]决定用户身份和权限 | |
|
4 |
login_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
上次登录时间: |
|
5 |
phone |
varchar |
11 |
0 |
Y |
N |
手机号码:[0,11]用户的手机号码,用于找回密码时或登录时 | |
|
6 |
phone_state |
smallint |
5 |
0 |
N |
N |
0 |
手机认证:[0,1](0未认证|1审核中|2已认证) |
|
7 |
username |
varchar |
16 |
0 |
N |
N |
用户名:[0,16]用户登录时所用的账户名称 | |
|
8 |
nickname |
varchar |
16 |
0 |
Y |
N |
昵称:[0,16] | |
|
9 |
password |
varchar |
64 |
0 |
N |
N |
密码:[0,32]用户登录所需的密码,由6-16位数字或英文组成 | |
|
10 |
|
varchar |
64 |
0 |
Y |
N |
邮箱:[0,64]用户的邮箱,用于找回密码时或登录时 | |
|
11 |
email_state |
smallint |
5 |
0 |
N |
N |
0 |
邮箱认证:[0,1](0未认证|1审核中|2已认证) |
|
12 |
avatar |
varchar |
255 |
0 |
Y |
N |
头像地址:[0,255] | |
|
13 |
open_id |
varchar |
255 |
0 |
Y |
N |
针对获取用户信息字段 | |
|
14 |
create_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间: |
表user_group (用户组:用于用户前端身份和鉴权)
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
group_id |
mediumint |
8 |
0 |
N |
Y |
用户组ID:[0,8388607] | |
|
2 |
display |
smallint |
5 |
0 |
N |
N |
100 |
显示顺序:[0,1000] |
|
3 |
name |
varchar |
16 |
0 |
N |
N |
名称:[0,16] | |
|
4 |
description |
varchar |
255 |
0 |
Y |
N |
描述:[0,255]描述该用户组的特点或权限范围 | |
|
5 |
source_table |
varchar |
255 |
0 |
Y |
N |
来源表: | |
|
6 |
source_field |
varchar |
255 |
0 |
Y |
N |
来源字段: | |
|
7 |
source_id |
int |
10 |
0 |
N |
N |
0 |
来源ID: |
|
8 |
register |
smallint |
5 |
0 |
Y |
N |
0 |
注册位置: |
|
9 |
create_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间: |
|
10 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间: |
登录功能是美食食谱分享平台的基础模块之一,主要用于验证用户身份并提供个性化服务。用户输入用户名和密码后,系统通过与数据库中的用户信息进行比对,确认身份的合法性。若验证成功,系统根据不同角色跳转到相应的操作界面;若验证失败,则提示用户重新输入。为增强安全性,密码采用加密存储,并支持密码找回功能,确保用户信息的保密性与系统的安全性。界面图如下所示:

-
-
-
-
-
- 用户登录界面设计
-
-
-
-
登录关键代码如下:
@Slf4j
public class LoginInterceptor implements HandlerInterceptor {
private String tokenName = "x-auth-token";
@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
String token = request.getHeader(this.tokenName);
setHeader(request, response);
log.info("[请求接口] - {} , [请求类型] - {}",request.getRequestURL().toString(),request.getMethod());
private void setHeader(HttpServletRequest request, HttpServletResponse response) {
response.setHeader("Access-control-Allow-Origin", request.getHeader("Origin"));
response.setHeader("Access-Control-Allow-Methods", "GET, HEAD, POST, PUT, DELETE, TRACE, OPTIONS, PATCH");
response.setHeader("Access-Control-Allow-Credentials", "true");
response.setHeader("Access-Control-Allow-Headers", request.getHeader("Access-Control-Request-Headers"));
response.setHeader("Access-Control-Max-Age", "1800");
response.setHeader("Content-Type", "application/json;charset=UTF-8");
response.setStatus(HttpStatus.OK.value());
}
-
-
- 首页
-
首页:用户能够在首页查看导航栏、推荐的食谱信息和菜谱信息。系统能够根据用户的菜系偏好或历史浏览记录智能推荐菜谱。界面图如下所示

-
-
-
-
-
- 首页界面设计
-
-
-
-
关键代码如下:
@PostMapping("/add")
@Transactional
public Map<String, Object> add(HttpServletRequest request) throws IOException {
service.insert(service.readBody(request.getReader()));
return success(1);
}
@Transactional
public Map<String, Object> addMap(Map<String,Object> map){
service.insert(map);
return success(1);
}
-
-
- 网站公告
-
网站公告:可查看后台发布的网站公告信息详情,并可进行收藏、收藏、点赞、发布评论等操作。界面图如下所示。

-
-
-
-
-
- 通知公告界面设计
-
-
-
-
关键代码如下:
@PostMapping("/upload")
public Map<String, Object> upload(@RequestParam(value = "file",required=false) MultipartFile file,HttpServletRequest request) {
log.info("进入方法");
if (file.isEmpty()) {
return error(30000, "没有选择文件");
}
try {
//判断有没路径,没有则创建
String filePath = request.getSession().getServletContext().getRealPath("\\") +"upload\\";
File targetDir = new File(filePath);
if (!targetDir.exists() && !targetDir.isDirectory()) {
if (targetDir.mkdirs()) {
log.info("创建目录成功")
-
-
- 美食资讯
-
美食资讯:可查看后台发布的美食资讯信息详情,并可进行收藏、收藏、点赞、发布评论等操作。界面图如下所示。

-
-
-
-
-
- 美食资讯界面设计
-
-
- 美食论坛
-
-
用户可以在论坛发表内容,如美食分享、心得体会等。可以查看论坛列表中某个美食信息的详情,并进行点赞、收藏和评论;还可以回复其他用户的评论信息,实现互动交流。界面图如下所示。

-
-
-
-
-
- 美食论坛界面设计
-
-
- 美食分享
-
-
用户可以在线上查看各种美食信息,还可以上传自己的美食信息,并选择合适的类别进行上传。还可以对上传的美食进行编辑和修改。界面图如下。

-
-
-
-
-
- 美食分享界面设计
-
-
- 在线客服
-
-
首页提供在线客服功能,用户可以进行投诉反馈或咨询。

-
-
-
-
-
- 在线客服界面设计
-
-
- 食谱信息
-
-
用户可以查看所有食谱信息的列表,并点击查看某个食谱的详情。并对食谱进行点赞、收藏和评论操作。该模板支持关键字搜索、局部搜索、分类搜索等多种搜索方式。

-
-
-
-
-
- 食谱信息界面设计
-
-
-
-
-
-
- 个人中心
-
个人中心:用户可以通过点击“我的账户”进入个人信息管理页面,修改个人信息和登录密码。点击“个人中心”查看和管理个人首页、美食论坛和收藏信息。通过点击“退出”按钮退出系统登录。界面图如下所示。

-
-
-
-
-
- 个人中心界面设计
-
-
-
-
系统用户:管理员可以添加、删除和修改注册用户和管理员的基本信息,管理用户的权限,确保不同用户只能访问各自授权的功能。界面图如下所示。

-
-
-
-
-
- 用户添加界面设计
-
-
-
-
添加关键代码如下:
<sql id="selectAccessTokenVo">
select token_id, token, maxage, create_time, update_time, user_id from access_token
</sql>
<select id="selectAccessTokenList" parameterType="com.project.demo.entity.AccessToken" resultMap="AccessTokenResult">
<include refid="selectAccessTokenVo"/>
<where>
<if test="token != null and token != ''"> and token = #{token}</if>
<if test="maxage != null "> and maxage = #{maxage}</if>
<if test="userId != null "> and user_id = #{userId}</if>
</where>
</select>
-
-
- 食谱分类管理
-
食谱分类管理:包含了食谱分类列表和药品分类添加。食谱分类列表:查看当前所有的食谱分类。食谱分类添加:新增食谱分类,有助于更好地组织食谱信息。界面图如下所示。

-
-
-
-
-
- 食谱分类界面设计
-
-
- 美食分享管理
-
-
美食分享管理:包含了美食分享列表和美食分享添加。美食分享列表:包含美食分享详情、用户评论等。美食分享添加:录入新的美食分享至平台中。审核用户发表的美食分享或发表心得等。界面图如下所示。

-
-
-
-
-
- 美食分享管理界面设计
-
-
- 系统管理
-
-
管理员点击“轮播图管理”菜单,可以对前台展示的轮播图进行设置。界面图如下所示。

-
-
-
-
-
- 系统管理界面设计
-
-
- 通知公告管理
-
-
通知公告管理:创建、编辑和发布面向全体用户的通知或公告。界面图如下所示。

-
-
-
-
-
- 通知公告界面设计
-
-
-
-
关键代码如下:
<sql id="selectAccessTokenVo">
select token_id, token, maxage, create_time, update_time, user_id from access_token
</sql>
<select id="selectAccessTokenList" parameterType="com.project.demo.entity.AccessToken" resultMap="AccessTokenResult">
<include refid="selectAccessTokenVo"/>
<where>
<if test="token != null and token != ''"> and token = #{token}</if>
<if test="maxage != null "> and maxage = #{maxage}</if>
<if test="userId != null "> and user_id = #{userId}</if>
</where>
-
-
- 资源管理
-
管理员能够查看美食论坛列表中的某个论坛详情和评论。还可以对美食论坛和论坛分类信息进行增删改查操作,以维护论坛内容的秩序和质量。界面图如下所示。

-
-
-
-
-
- 资源管理界面设计
-
-
- 交流管理
-
-
管理员需要对用户发表的评论进行审核和编辑,确保评论内容的合规性和积极性。管理员需要对用户的问题或反馈进行及时回复和处理,以提升用户满意度。对于不恰当的言论,管理员可以进行删除处理。界面图如下所示。

-
-
-
-
-
- 交流管理界面设计
-
-
-
-
为了确保平台的稳定性和高效性,管理员需要配置并维护一套完整的测试环境与工具。测试环境通常包括开发环境、预发布环境和生产环境。开发环境用于开发阶段的功能测试,预发布环境模拟实际运行情况进行系统集成测试,生产环境则是最终用户使用的平台环境。
测试工具涵盖自动化测试工具、性能测试工具和安全性测试工具等。包括Selenium、Jest、TestNG等,能够高效地进行功能回归测试,确保新功能不会影响现有功能的正常运行。性能测试工具如JMeter用于模拟大量并发用户,评估系统在高负载下的表现。安全性测试工具(如OWASP ZAP)则帮助检测平台的漏洞和潜在安全风险,确保用户数据安全。
通过使用这些测试环境与工具,管理员可以提前发现并修复潜在问题,提升平台的稳定性与用户体验,确保系统在上线后平稳运行。
本系统的主要功能就是普通用户登录后,可搜索和浏览美食论坛,并可进入食谱信息进行美食分享,管理员登录后可对食谱信息和美食分享信息进行管理,包括增改删查操作。测试设计如下所示:
- 登录模块功能测试
用户登录前首先需注册成为平台用户,使用账号和密码可进行登录。用户登录功能测试用例设计如下表所示:
表6.1 用户登录功功能测试用例
|
测试编号 |
测试目的 |
测试步骤 |
预期结果 |
实际结果 |
是否通过 |
|
TC001 |
验证有效登录 |
1. 输入正确的用户名和密码 <br> 2. 点击登录按钮 |
显示登录成功,跳转至用户首页 |
登录成功,跳转至用户首页 |
通过 |
|
TC002 |
验证空用户名登录 |
1. 不输入用户名,输入正确密码 <br> 2. 点击登录按钮 |
显示用户名不能为空提示信息 |
显示用户名不能为空提示信息 |
通过 |
|
TC003 |
验证空密码登录 |
1. 输入正确用户名,不输入密码 <br> 2. 点击登录按钮 |
显示密码不能为空提示信息 |
显示密码不能为空提示信息 |
通过 |
|
TC004 |
验证错误用户名登录 |
1. 输入错误的用户名和正确密码 <br> 2. 点击登录按钮 |
显示用户名或密码错误提示信息 |
显示用户名或密码错误提示信息 |
通过 |
|
TC005 |
验证错误密码登录 |
1. 输入正确用户名和错误密码 <br> 2. 点击登录按钮 |
显示用户名或密码错误提示信息 |
显示用户名或密码错误提示信息 |
通过 |
- 美食信息模块功能测试
美食信息模块测试包括美食信息展示功能测试、食谱信息添加功能测试、食谱信息搜索功能测试、美食分享功能测试。美食信息模块测试用例如表6.2-6.4所示。
美食信息展示功能测试用例设计如下表所示:
表6.2 美食论坛展示功能测试用例
|
测试编号 |
测试目的 |
测试步骤 |
预期结果 |
实际结果 |
是否通过 |
|
TC001 |
验证正常展示美食论坛信息 |
1. 进入美食论坛展示页面 <br> 2. 浏览展示的美食论坛内容 |
能够正常显示美食论坛内容 |
美食论坛内容正常显示 |
通过 |
|
TC002 |
验证美食论坛链接跳转 |
1. 进入美食论坛展示页面 <br> 2. 点击美食论坛链接 |
能够跳转至相应美食论坛详情页面 |
成功跳转至美食论坛详情页面 |
通过 |
|
TC003 |
验证搜索功能 |
1. 进入美食论坛展示页面 <br> 2. 使用搜索功能搜索美食论坛 |
显示符合搜索条件的美食论坛列表 |
显示符合搜索条件的美食论坛列表 |
通过 |
|
TC004 |
验证菜品类型展示 |
1. 进入美食论坛展示页面 <br> 2. 选择菜品类型 |
显示该类型下的美食论坛列表 |
成功显示该类型下的美食论坛列表 |
通过 |
|
TC005 |
验证美食论坛的评论功能 |
1. 进入美食论坛详情展示页面 <br> 2. 查看美食论坛并发表评论 |
评论成功显示在美食论坛页面 |
评论成功显示在美食论坛页面 |
通过 |
食谱信息添加功能测试用例设计如下表所示:
表6.3 食谱信息添加功能测试用例
|
测试编号 |
测试目的 |
测试步骤 |
预期结果 |
实际结果 |
是否通过 |
|
TC001 |
验证添加食谱信息 |
1. 进入食谱信息添加界面 <br> 2. 输入食谱信息信息 <br> 3. 点击添加按钮 |
食谱信息成功添加到系统页面中 |
食谱信息成功添加到系统页面中 |
通过 |
|
TC002 |
验证食谱信息菜品类型选择 |
1. 进入食谱信息添加界面 <br> 2. 选择菜品类型 <br> 3. 输入食谱信息信息 <br> 4. 提交食谱信息信息 |
根据选择的食谱信息菜品类型成功添加食谱信息 |
根据选择的食谱信息类型成功添加食谱信息 |
通过 |
|
TC003 |
验证食谱信息内容输入 |
1. 进入食谱信息添加界面 <br> 2. 输入正确食谱信息内容和答案 <br> 3. 点击添加按钮 |
食谱信息内容成功录入系统 |
食谱信息内容成功录入系统 |
通过 |
|
TC004 |
验证食谱信息图片上传 |
1. 进入食谱信息添加界面 <br> 2. 上传食谱信息相关图片 <br> 3. 点击添加按钮 |
图片成功上传并与食谱信息关联 |
图片成功上传并与食谱信息关联 |
通过 |
食谱信息搜索功能测试用例设计如下表所示:
表6.4 食谱信息搜索功能测试用例
|
测试编号 |
测试目的 |
测试步骤 |
预期结果 |
实际结果 |
是否通过 |
|
TC001 |
验证食谱信息输入食谱名称搜索 |
1. 进入食谱信息搜索界面 <br> 2. 输入食谱名称 <br> 3. 确认并搜索 |
根据选择的食谱名称关键词显示相关食谱信息信息 |
根据选择的食谱名称关键词成功显示相关食谱信息信息 |
通过 |
|
TC002 |
验证食谱信息输入食谱类型搜索 |
1. 进入食谱信息搜索界面 <br> 2. 输入食谱类型 <br> 3. 确认并搜索 |
根据选择的食谱类型关键词显示相关食谱信息信息 |
根据选择的食谱类型关键词成功显示相关食谱信息信息 |
通过 |
|
TC003 |
验证食谱信息选择食谱食材搜索 |
1. 进入食谱信息搜索界面 <br> 2. 输入食谱食材 <br> 3. 确认并搜索 |
根据选择的食谱食材关键词显示相关食谱信息信息 |
根据选择的食谱食材关键词成功显示相关食谱信息信息 |
通过 |
表6.5 兼容性测试用例
|
用例编号 |
测试类型 |
测试目标 |
操作过程 |
预期结果 |
|
兼容性_01 |
设备兼容性 |
测试平台在不同设备上的表现 |
在多种设备上访问平台并记录表现 |
平台在各种设备上都能正常加载和显示页面 |
|
兼容性_02 |
浏览器兼容性 |
测试平台在不同浏览器上的表现 |
在多种浏览器中访问平台并记录表现 |
平台在各种主流浏览器上都能正常加载和显示页面 |
|
兼容性_03 |
分辨率兼容性 |
测试平台在不同分辨率下的显示效果 |
在不同分辨率的设备上访问平台并记录表现 |
平台在各种分辨率下都能适应并正常显示内容 |
|
兼容性_04 |
操作平台兼容性 |
测试平台在不同操作平台上的运行情况 |
在不同操作平台上访问平台并记录表现 |
平台能够在常用操作平台上正常运行和显示 |
- 性能测试
表6.6 性能测试用例
|
用例编号 |
测试类型 |
测试目标 |
操作过程 |
预期结果 |
|
性能_01 |
负载测试 |
测试平台在正常负载下的性能 |
逐步增加用户数来模拟不同的负载情况 |
平台能够稳定处理并响应不同数量的用户请求 |
|
性能_02 |
压力测试 |
测试平台在极端负载下的性能 |
以超过平台承受极限的用户数来测试平台 |
平台能够在高负载情况下仍然保持正常运行 |
|
性能_03 |
并发测试 |
测试平台能同时处理多少并发用户请求 |
同时发送多个并发用户请求来测试平台性能 |
平台能够有效地处理多个并发请求 |
|
性能_04 |
数据量测试 |
测试平台在大数据量下的性能 |
向平台添加大量数据并测试平台响应时间 |
平台能够在大数据量情况下保持较快的响应时间 |
全部测试用例都已通过,且不存在漏洞,实现了本论文开始时所作要求和期望。本平台运行稳定,使用流畅,可以满足客户需求。试运行后进行平台评估,可以认为该平台达到预定的目标要求,可以满足用户的需求,也满足了平台开发前所作目标。平台在经过大量重复测试后运行十分稳定,安全实用,功能模块已经达到预定目标所需。在规定的时间内实现平台的大部分功能,且满足要求,节省开发成本,有助于提高科学管理水平,符合本人经济情况。
简而言之,经过严格的测试,可以发现该平台的功能和性能非常出色,它的精度、可靠性、稳健性都达到了极高的水平,而且它还支持快速、精细的点击操作,使用者的使用感受更加良好。此外,它还支持各种主流浏览器,满足不同的使用要求。
本文设计并实现了一个美食食谱分享平台,通过信息化手段提升用户的烹饪体验和社区互动质量。该平台不仅为用户提供了丰富的功能,还为管理员提供了一套全面、便捷、高效的管理工具。通过平台的功能设计与技术实现,美食食谱分享平台成功地整合了多种关键功能模块,包括用户注册登录、查看和搜索食谱、上传美食、参与美食论坛、管理员功能有用户管理、食谱分类管理、食谱信息管理、网站公告管理、论坛管理、评论管理和客服管理等。这些功能模块共同作用,为用户提供了一个全面且互动性强的美食分享平台。
在功能设计方面,平台针对管理员和注册用户两类角色,分别设计了不同的权限和操作界面,确保了管理流程的规范化与便捷化。管理员可以通过后台管理平台对用户、食谱、公告等内容进行高效管理,而普通用户则可以方便地浏览、搜索、上传和分享食谱,以及参与美食论坛的讨论。技术实现方面,平台采用了SSM框架(Spring + SpringMVC + MyBatis),充分利用了其高效性、可扩展性和易维护性的优势。MySQL数据库用于数据存储,确保了数据的稳定性和安全性。前端界面采用简洁直观的设计,优化了用户体验,使得用户能够轻松上手并享受平台提供的各项服务。
通过平台的实施与运行,美食食谱分享平台将显著提升用户的烹饪灵感获取和个人技能提升,促进饮食文化的传播与交流。同时,管理员能够更有效地监督和评估平台内容的质量,优化资源配置,提升平台的服务质量和用户满意度。这不仅为用户提供了便捷高效的美食分享平台,也为相关领域的研究与实践提供了有价值的参考和支持。通过这个平台,人们不仅能享受美食带来的快乐,还能感受到文化的魅力和社交的乐趣。
- 马铭华.基于微信小程序的贵州美食推广系统[J].软件,2023,44(08):147-149.
- 李凯.基于项目特征与用户偏好的美食推荐系统的设计与实现[D].北京邮电大学,2022.
- 邓涵兮,陈志华.基于网络评论的美食推荐系统[J].中国传媒科技,2022,(03):39-41.
- 刘子豪,闭祖松,简钰轩,等.基于大数据的食谱推荐系统设计[J].工业控制计算机,2022,35(07):92-93+96.
- 李亚君.基于ASP.NET的美食商城后台管理系统设计与实现[J].机电信息,2022,(16):29-33.
- 杨旭东.面向校园餐饮的菜品推荐方法与系统[D].北京交通大学,2023.
- 刘娜.数字美食的实践者分析框架:以大众点评App为考察点[J].新闻与写作,2024,(01):81-94.
- Peters S K ,Helga M .Culinary Texts in Context, 1500–1800:Manuscript Recipe Books in Early Modern Europe[M].Amsterdam University Press:2024-07-11.
- D P J G ,A C M ,Rashelle H , et al.Reading, sharing, creating pinterest recipes: Parental engagement and feeding behaviors.[J].Appetite,2022,180106287-106287.
- 朱金波.Java编程语言在计算机软件开发中的应用优势分析[J].信息记录材料,2023,24(05):68-70.
- 王希,戴靓婕.MySQL数据库技术在Web动态网页设计中的运用研究[J].软件,2024,45(07):77-79.
- 汪雁,黄伟,安龙,等.Web前端开发案例实战教程[M].重庆大学出版社:202401.281.
- 王江霖,黄彩霞,樊旭龙.基于SSM框架的网络资源共享平台的研究与实现[J].电脑知识与技术,2021,17(28):76-78.
- 鲜易洲,杨蕊,吴蓉,等.时食美食分享系统的设计与分析[J].电脑知识与技术,2021,17(09):85-87.
- 傅俊松,曾丽.基于SSM的高校食堂就餐系统设计——以四川大学锦城学院为例[J].现代信息科技,2021,5(06):5-8.
- 吴晨,毛玉萃,张乐.一款基于SSM的中华美食网站的设计与实现[J].电脑知识与技术,2020,16(19):70-72.
- 黄安.基于PHP+Mysql技术的网站设计与实现——以美食网站系统的设计为例[J].轻纺工业与技术,2019,48(07):168-170.
- 李恋.基于JAVA WEB的美食网设计与实现[J].福建电脑,2019,35(02):78-79.
- 张进飞,黄晓霞.基于BaaS服务的iOS平台美食分享系统设计与实现[J].现代计算机(专业版),2015,(19):78-80.
- 李彤.基于PHP和MySQL的小型应用设计——以Android的美食和出行信息分享平台为例[J].计算机光盘软件与应用,2014,17(10):263+265.
- 许宁.基于google-map的美食导航网[J].中国科技信息,2012,(14):85-86.
这次毕业设计能够完成,最重要的就是来自指导老师的帮助,老师不厌其烦的对我的论文及毕业设计提出非常有建设性的建议,我的毕设施能够完成离不开老师的帮助。我对老师由衷的表示感谢,
其次要感谢大学四年里学院里所有的任课老师的教导,老师们在我整个大学四年里给予了我丰富的知识,让我能够在大学中不虚度光阴,踏踏实实的学习,没有这些老师不辞辛劳的教诲,我无法完成这四年的学业。
最后,我要感谢我的家人和同学们。感谢父母在物质与精神上给予我无限的支持和鼓励。感谢我的同学们,在论文写作期间,你们给予了我许多宝贵的建议和帮助,让我在学术研究的道路上不再孤单。
再次感谢所有在我大学生活中给予我帮助和支持的人们。您们的关怀和鼓励将永远铭刻在我的心中,成为我未来前行的动力。
由于自己的水平有限,毕设仍然存在着很大的缺陷,各位老师若提出意见,我会努力改正。
点赞+收藏+关注 →私信领取本源代码、数据库
关注博主下篇更精彩
一键三连!!!
一键三连!!!
一键三连!!!
感谢一键三连!!!

被折叠的 条评论
为什么被折叠?



