1. 项目背景与核心价值
在快节奏的现代生活中,健康饮食管理正成为越来越多人关注的重点。传统菜谱应用往往只提供静态的食谱展示,缺乏个性化推荐和营养分析功能。我们开发的这套健康菜谱生成系统,正是为了解决这一痛点而生。
这个系统最核心的创新点在于:
- 基于用户的身体指标(BMI、基础代谢率等)和饮食偏好,自动生成符合营养学标准的个性化菜谱
- 采用智能算法进行食材搭配,确保每餐的蛋白质、碳水、脂肪比例科学合理
- 提供完整的从食材采购到烹饪步骤的闭环解决方案
技术栈选择上,后端采用SpringBoot框架,主要考虑其:
- 快速开发特性:自动配置和起步依赖大大减少了样板代码
- 微服务友好:便于后期扩展营养分析等独立服务
- 强大的生态系统:与MyBatis、Redis等组件集成顺畅
前端选用Vue.js框架,优势在于:
- 响应式数据绑定:实时反映菜谱调整的营养成分变化
- 组件化开发:菜谱卡片、营养标签等可复用组件提升开发效率
- 丰富的UI库:Element UI等提供了美观的饮食数据可视化方案
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 系统架构设计
2.1 整体技术架构
系统采用经典的前后端分离架构:
code复制前端层:Vue 3 + TypeScript + Element Plus
网关层:Nginx反向代理 + 负载均衡
后端层:SpringBoot 2.7 + MyBatis-Plus + Redis
数据层:MySQL 8.0 + Elasticsearch
2.2 核心功能模块
2.2.1 用户画像模块
- 采用HanLP分词处理用户输入的饮食日志
- 基于规则引擎分析用户的口味偏好(甜/咸/辣等)
- 使用OpenCV实现食材图像识别(选配功能)
2.2.2 菜谱生成引擎
java复制// 核心算法伪代码
public List<Recipe> generateRecipes(UserProfile profile) {
// 1. 基础过滤:排除过敏食材
Set<Ingredient> candidates = filterAllergens(profile);
// 2. 营养计算:根据TDEE分配三大营养素
NutritionTarget target
