基于SSM+小程序健身饮食管理系统的设计与实现

简介: 这篇文章就给大家认真剖析下这个程序的详细开发。

最近猛哥给一个小伙伴熬夜开发了一个小程序的健身管理系统,这篇文章就给大家认真剖析下这个程序的详细开发。


1,系统的功能

   

1.1 小程序端


(1)首页展示:用户可以在首页进行饮食和运动信息的浏览。


(2)登录功能:用户在使用该小程序之前需要输入用户名和密码进行登录,通过和数据库中的信息比对成功之后方可进入系统。


(3)饮食模块:用户可以将饮食加入自己的今日饮食清单之中。


(4)运动模块:用户可以将运动加入自己的今日运动清单中。


(5)个人信息模块:用户可以对自己的个人信息进行管理。


1.2 系统后端


(1)管理员登录:管理员可以登陆系统的后台对前端数据进行管理。


(2)用户查看:管理员可以查看所有使用该小程序的用户信息。


(3)饮食管理:管理员可以对饮食信息进行管理,包括添加饮食信息、删除饮食信息以及编辑饮食信息等操作。


(4)运动管理:管理员可以对运动信息进行管理,包括添加运动信息、删除运动信息以及编辑运动信息等操作。


(5)推荐管理:管理员可以对饮食和运动的推荐进行管理,这些饮食和运动信息将会在前端的推荐也页面中进行展示。


2,系统的界面演示:


2.1 小程序端


微信图片_20221009163832.png


微信图片_20221009163837.png

微信图片_20221009163841.png


微信图片_20221009163846.png


微信图片_20221009163855.png


微信图片_20221009163859.png


微信图片_20221009163905.png


微信图片_20221009163909.png



2.2 系统的后台演示


微信图片_20221009163913.png


微信图片_20221009163917.png


微信图片_20221009163921.png


微信图片_20221009163921.png


微信图片_20221009163925.png


3,系统的核心代码:


@Controller
@RequestMapping("/articleComment")
public class ArticleCommentController {
    @Resource
    private UserUtils userUtils;
    @Autowired
    private ArticleCommentService articleCommentService;
    @RequestMapping("listPage")
    public String listPage() {
        return "articleComment/list";
    }
    @RequestMapping("addPage")
    public String addPage() {
        return "articleComment/add";
    }
    @RequestMapping("editPage")
    public String editPage(HttpServletRequest request, Long id) {
        request.setAttribute("id", id);
        return "articleComment/edit";
    }
    @RequestMapping("/getList")
    @ResponseBody
    public ReturnDataForLayui getList(ArticleComment articleComment) {
        return articleCommentService.getList(articleComment);
    }
    @RequestMapping("/add")
    @ResponseBody
    public ReturnData add(ArticleComment articleComment, HttpServletRequest request) {
        User user = new User();
        ReturnData returnData = userUtils.setUserId(request, user);
        if (!returnData.isSuccess()) {
            return returnData;
        }
        articleComment.setUid(user.getId());
        return articleCommentService.add(articleComment);
    }
    @RequestMapping("/delete")
    @ResponseBody
    public ReturnData delete(ArticleComment articleComment) {
        return articleCommentService.delete(articleComment);
    }
    @RequestMapping("/update")
    @ResponseBody
    public ReturnData update(ArticleComment articleComment) {
        return articleCommentService.update(articleComment);
    }
    @RequestMapping("/updateState")
    @ResponseBody
    public ReturnData updateState(ArticleComment articleComment) {
        return articleCommentService.updateState(articleComment);
    }
}


@Controller
@RequestMapping("/dietCategory")
public class DietCategoryController {
    @Autowired
    private DietCategoryService dietCategoryService;
  @RequestMapping("listPage")
    public String listPage() {
        return "dietCategory/list";
    }
  @RequestMapping("addPage")
    public String addPage() {
        return "dietCategory/add";
    }
    @RequestMapping("editPage")
    public String editPage(HttpServletRequest request, Long id) {
        request.setAttribute("id", id);
        return "dietCategory/edit";
    }
  @RequestMapping("/getList")
    @ResponseBody
    public ReturnDataForLayui getList(DietCategory dietCategory) {
        return dietCategoryService.getList(dietCategory);
    }
  @RequestMapping("/add")
    @ResponseBody
    public ReturnData add(DietCategory dietCategory, Long userId) {
        return dietCategoryService.add(dietCategory);
    }
  @RequestMapping("/delete")
    @ResponseBody
    public ReturnData delete(DietCategory dietCategory) {
        return dietCategoryService.delete(dietCategory);
    }
  @RequestMapping("/update")
    @ResponseBody
    public ReturnData update(DietCategory dietCategory) {
        return dietCategoryService.update(dietCategory);
    }
  @RequestMapping("/updateState")
    @ResponseBody
    public ReturnData updateState(DietCategory dietCategory) {
        return dietCategoryService.updateState(dietCategory);
    }
}


public interface ArticleCommentService {
  ReturnDataForLayui getList(ArticleComment articleComment);
  ReturnData add(ArticleComment articleComment);
  ReturnData delete(ArticleComment articleComment);
  ReturnData update(ArticleComment articleComment);
  ReturnData updateState(ArticleComment articleComment);
}
public interface DietCategoryService {
  ReturnDataForLayui getList(DietCategory dietCategory);
  ReturnData add(DietCategory dietCategory);
  ReturnData delete(DietCategory dietCategory);
  ReturnData update(DietCategory dietCategory);
  ReturnData updateState(DietCategory dietCategory);
}

4,系统的数据表:

DROP TABLE IF EXISTS `article`;
CREATE TABLE `article`  (
  `id` bigint(19) NOT NULL AUTO_INCREMENT COMMENT 'ID',
  `title` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '文章标题',
  `detail` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '文章详情',
  `coverImg` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '封面图',
  `createTime` datetime(0) NULL DEFAULT CURRENT_TIMESTAMP(0) COMMENT '创建时间',
  `updateTime` datetime(0) NULL DEFAULT CURRENT_TIMESTAMP(0) ON UPDATE CURRENT_TIMESTAMP(0) COMMENT '更新时间',
  `state` int(5) NULL DEFAULT 1 COMMENT '状态',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 4 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '文章' ROW_FORMAT = Dynamic;
DROP TABLE IF EXISTS `article_comment`;
CREATE TABLE `article_comment`  (
  `id` bigint(19) NOT NULL AUTO_INCREMENT COMMENT 'ID',
  `content` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '评论内容',
  `articleId` bigint(19) NOT NULL COMMENT '文章',
  `uid` bigint(19) NOT NULL COMMENT '用户',
  `createTime` datetime(0) NULL DEFAULT CURRENT_TIMESTAMP(0) COMMENT '评论时间',
  `updateTime` datetime(0) NULL DEFAULT CURRENT_TIMESTAMP(0) ON UPDATE CURRENT_TIMESTAMP(0) COMMENT '更新时间',
  `state` int(5) NULL DEFAULT 1 COMMENT '状态',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 12 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '文章评论' ROW_FORMAT = Dynamic;
DROP TABLE IF EXISTS `diet`;
CREATE TABLE `diet`  (
  `id` bigint(19) NOT NULL AUTO_INCREMENT COMMENT 'ID',
  `dietName` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '食谱名称',
  `description` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '简介',
  `calorie` decimal(9, 2) UNSIGNED NOT NULL DEFAULT 0.00 COMMENT '热量(卡路里)',
  `calorieUnit` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '热量单位',
  `coverImg` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '封面图',
  `categoryId` bigint(19) NOT NULL COMMENT '分类',
  `createTime` datetime(0) NULL DEFAULT CURRENT_TIMESTAMP(0) COMMENT '创建时间',
  `updateTime` datetime(0) NULL DEFAULT CURRENT_TIMESTAMP(0) ON UPDATE CURRENT_TIMESTAMP(0) COMMENT '更新时间',
  `state` int(5) NULL DEFAULT 1 COMMENT '状态',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 3 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '食谱' ROW_FORMAT = Dynamic;
DROP TABLE IF EXISTS `diet_category`;
CREATE TABLE `diet_category`  (
  `id` int(11) NOT NULL AUTO_INCREMENT COMMENT 'ID',
  `name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '分类名称',
  `createTime` datetime(0) NULL DEFAULT CURRENT_TIMESTAMP(0) COMMENT '创建时间',
  `updateTime` datetime(0) NULL DEFAULT CURRENT_TIMESTAMP(0) ON UPDATE CURRENT_TIMESTAMP(0) COMMENT '更新时间',
  `state` int(5) NULL DEFAULT 1 COMMENT '状态',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 24 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '食谱分类' ROW_FORMAT = Dynamic;


目录
相关文章
|
22天前
|
运维 小程序 前端开发
结合圈层营销策略,打造稳定可靠的圈子app系统,圈子小程序!
圈子系统是一种社交平台,用户可按兴趣、职业等创建或加入“圈子”,进行内容发布、讨论和资源共享。开发时需考虑需求分析、技术选型(如PHP、MySQL)、页面设计、功能实现(注册、登录、发布、评论等)、测试优化及运维管理。圈层营销则通过精准化、高端化的方式传递品牌信息,增强客户归属感。圈子小程序基于微信等平台,具备跨平台、便捷性和社交性,开发过程中需明确需求、选择技术框架、设计页面并确保稳定性和流畅性。
119 9
|
9天前
|
小程序 数据挖掘
圈子系统兴趣讨论群组的创建,社群运营的重要性及策略制定,同城交友app、小程序方式的创新
### 圈子系统与社群运营简介 圈子系统是社交平台中的功能模块,允许用户创建和管理兴趣小组,设置名称、规则等,吸引志同道合者加入。通过浏览不同圈子,用户可以选择感兴趣的群体参与。社群运营则通过对具有共同需求或兴趣的用户进行组织和管理,提升品牌影响力和商业价值。有效的社群运营策略包括明确定位、制定策略、持续输出有价值内容、定期举办活动、合理分配角色及数据监测优化,从而增强用户粘性和活跃度。 **圈子系统源码获取:** [链接](https://gitee.com/multi-customer-software/qz)
57 9
|
6天前
|
消息中间件 监控 小程序
电竞陪玩系统架构优化设计,陪玩app如何提升系统稳定性,陪玩小程序平台的测试与监控
电竞陪玩系统架构涵盖前端(React/Vue)、后端(Spring Boot/php)、数据库(MySQL/MongoDB)、实时通信(WebSocket)及其他组件(Redis、RabbitMQ、Nginx)。通过模块化设计、微服务架构和云计算技术优化,提升系统性能与可靠性。同时,加强全面测试、实时监控及故障管理,确保系统稳定运行。
|
12天前
|
移动开发 小程序 前端开发
超详细攻略!uniapp陪玩系统,打包陪玩小程序、H5需要注意什么?
陪玩系统的打包过程涵盖APP、小程序和H5平台。APP打包需使用uni-app开发工具,配置项目信息并选择云打包;小程序打包需在微信公众平台注册账号并提交审核;H5打包则直接通过uni-app生成文件并上传至服务器。各平台需注意权限配置、代码规范及充分测试,确保应用稳定性和兼容性。
|
23天前
|
移动开发 小程序 前端开发
几千怎么部署搭建校园服务平台,校园圈子论坛系统小程序搭建,校园系统源码,多种功能一体的综合性校园平台
校园圈子论坛是一款集交友、二手市场、聊天等多功能于一体的校园社交平台,支持App、小程序和H5三端交付。学生可处理闲置物品、结识新朋友,通过算法匹配兴趣相投的用户。平台提供分享邀请机制,支持自动绑定推荐关系,并设有奖励机制。开发过程中需注重数据安全与系统稳定性,确保功能兼容及性能优化。
62 5
|
23天前
|
移动开发 小程序 前端开发
使用php开发圈子系统特点,如何获取圈子系统源码,社交圈子运营以及圈子系统的功能特点,圈子系统,允许二开,免费源码,APP 小程序 H5
开发一个圈子系统(也称为社交网络或社群系统)可以是一个复杂但非常有趣的项目。以下是一些关键特点和步骤,帮助你理解如何开发、获取源码以及运营一个圈子系统。
106 3
|
1月前
|
缓存 移动开发 小程序
uni-vue3-wetrip自创跨三端(H5+小程序+App)酒店预订app系统模板
vue3-uni-wetrip原创基于vite5+vue3+uniapp+pinia2+uni-ui等技术开发的仿去哪儿/携程预约酒店客房app系统。实现首页酒店展示、预订搜索、列表/详情、订单、聊天消息、我的等模块。支持编译H5+小程序+App端。
82 8
|
23天前
|
小程序 安全 网络安全
清晰易懂!陪玩系统源码搭建的核心功能,陪玩小程序、陪玩app的搭建步骤!
陪玩系统源码包含多种约单方式、实时语音互动、直播间与聊天室、大神申请与抢单、动态互动与社交及在线支付与评价等核心功能。搭建步骤包括环境准备、源码上传与解压、数据库配置、域名与SSL证书绑定、伪静态配置及后台管理。注意事项涵盖源码安全性、二次开发、合规性和技术支持。确保平台安全、合规并提供良好用户体验是关键。
|
23天前
|
小程序 前端开发 数据挖掘
圈子论坛社区交友系统开源版小程序源码,自定义小程序管理社区圈子软件开发,打造受欢迎社交圈
通过获取开源版小程序源码、进行自定义小程序管理社区圈子软件开发以及注重用户体验和功能模块的设计,可以打造一个受欢迎的社交圈。同时,需要不断优化和完善系统,以满足用户不断变化的需求和期望。
71 0
|
2月前
|
移动开发 小程序
仿青藤之恋社交交友软件系统源码 即时通讯 聊天 微信小程序 App H5三端通用
仿青藤之恋社交交友软件系统源码 即时通讯 聊天 微信小程序 App H5三端通用
84 3