基于springboot的健身管理系统

简介: 该系统为原创项目,创作于2021年8月,包含详细数据库设计、数模设计。基于springboot技术,数据层为MyBatis,mysql数据库,具有完整的业务逻辑,适合选题:健身、健身房、健身会员等项目。

项目介绍:



该系统为原创项目,创作于2021年8月,包含详细数据库设计、数模设计。基于springboot技术,数据层为MyBatis,mysql数据库,具有完整的业务逻辑,适合选题:健身、健身房、健身会员等项目。


项目功能:



98a7fdd49fea48fc902a3e799c1a0bcf.png



数模设计:



775f25dde4c54feda472337017228a49.png


数据库设计:



b51bd5e623394d56823367511b0dcfa4.png


系统包含技术:



后端:springboot、mybatis

前端:layui,js,css等

开发工具:idea

数据库:mysql 5.7

JDK版本:jdk1.8

服务器:tomcat8


部分截图说明:



下面是登录和注册


d637dddc9f054550a02b9bfeae6c28c4.png


下面是管理员首页,用户首页类似


e8b0276f95a84802b76dc2cf93195ba1.png


下面是会员管理


d7689f86a3534559a0d09335796e454d.png


这是所有发布的健身课程


2566b375f8574b18bed43709e5018562.png


用户可以购买充值卡


f9d88e7ab5de44bc996f21123dae1f45.png


课程预订后可以进行评论,下面是管理员评论管理


8479493287974df0a6cf7087942be0c8.png


用户可以进行课程预订


e869a055528148b2b43c9927ff42fba1.png


用户可以查看个人的订单


9f558893f14c4d3a8ea50f9b4bb3ff66.png


用户购买充值卡


58f50f71d73041059eedddf3322316a6.png


部分代码:



 /**
     * 分页查询
     * pageIndex 当前页码
     * pageSize  显示条数
     */
    @RequestMapping(value = "/findCard")
    public String findCard(Integer pageIndex, Integer pageSize,String cardType, Model model,HttpServletRequest request) throws ParseException {
        HttpSession session = request.getSession();
        if(session.getAttribute("ad") == null){
            session.setAttribute("msg", "对不起,请登录!");
            return "login";
        }
        String type = (String)session.getAttribute("type");
        Map mp = new HashMap();
        mp.put("cardType",cardType);
        PageInfo<Card> pageList = cardService.findPageInfo(pageIndex,pageSize,mp);
        if(type.equals("02")){
            User u = (User)session.getAttribute("ad");
            mp.put("uid",u.getId());
            List<Ucard> ucards = ucardService.queryFilter(mp);
            if(ucards.size()>=1){
                Ucard ucard = ucards.get(0);
                SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
                String nowDate_String = sdf.format( new Date() );
                Date nowDate_Date = sdf.parse(nowDate_String);
                Date endDate_Date = sdf.parse(ucard.getTime());
                int compareTo = nowDate_Date.compareTo(endDate_Date);
                if(compareTo == -1){
                    model.addAttribute("flags","0");
                }else{
                    model.addAttribute("flags","1");
                }
            }else{
                model.addAttribute("flags","1");
            }
        }
        model.addAttribute("pageList",pageList);
        return "CardList";
    }
    /**
     * 获取某个卡的订购用户
     */
    @RequestMapping(value = "/getUserAndCard" ,method = RequestMethod.GET)
    @ResponseBody
    public ResultVO addCard(@RequestParam("id") String id) {//{"code": 0,"msg": "","count": 1000,"data": [{}, {}]}
        Map mp = new HashMap();
        mp.put("kid",id);
        List<UcardVO> ucardVOS = ucardService.queryFilter1(mp);
        ResultVO resultVO = new ResultVO();
        resultVO.setCode(0);
        resultVO.setCount(ucardVOS.size());
        resultVO.setMsg("成功");
        resultVO.setData(ucardVOS);
        return resultVO;
    }
    /**
     * 添加
     */
    @RequestMapping(value = "/addCard" ,method = RequestMethod.POST)
    @ResponseBody
    public String addCard( @RequestBody Card card) {
        int d = cardService.addCard(card);
        return "CardList";
    }
    /**
     * 删除
     */
    @RequestMapping( "/deleteCard")
    @ResponseBody
    public String deleteCard(String id) {
        int d = cardService.deleteCard(id);
        return "CardList";
    }
    /**
     * 修改
     */
    @RequestMapping( "/updateCard")
    public String updateCard( Card card) {
        int d = cardService.updateCard(card);
        return "redirect:/findCard";
    }
    /**
     * 按照ID查询
     */
    @RequestMapping( "/findCardById")
    public String findCardById(String id,Model model,HttpServletRequest request) {
        Card card= cardService.findCardById(id);
        model.addAttribute("card",card);
        return "CardEdit";
    }


以上就是部分功能展示,从整体上来看,本系统功能是十分完整的,界面设计简洁大方,交互友好,数据库设计也很合理,规模适中,代码工整,清晰,适合学习使用。


好了,今天就到这儿吧,小伙伴们点赞、收藏、评论,一键三连走起呀,下期见~~

相关文章
|
11天前
|
前端开发 JavaScript Java
springboot图书馆管理系统前后端分离版本
springboot图书馆管理系统前后端分离版本
34 12
|
8天前
|
JavaScript NoSQL Java
基于SpringBoot+Vue实现的大学生就业服务平台设计与实现(系统源码+文档+数据库+部署等)
面向大学生毕业选题、开题、任务书、程序设计开发、论文辅导提供一站式服务。主要服务:程序设计开发、代码修改、成品部署、支持定制、论文辅导,助力毕设!
35 6
|
8天前
|
JavaScript Java 测试技术
基于Java+SpringBoot+Vue实现的车辆充电桩系统设计与实现(系统源码+文档+部署讲解等)
面向大学生毕业选题、开题、任务书、程序设计开发、论文辅导提供一站式服务。主要服务:程序设计开发、代码修改、成品部署、支持定制、论文辅导,助力毕设!
27 6
|
8天前
|
JavaScript NoSQL Java
基于SpringBoot+Vue的班级综合测评管理系统设计与实现(系统源码+文档+数据库+部署等)
✌免费选题、功能需求设计、任务书、开题报告、中期检查、程序功能实现、论文辅导、论文降重、答辩PPT辅导、会议视频一对一讲解代码等✌
26 4
|
8天前
|
JavaScript NoSQL Java
基于SpringBoot+Vue实现的大学生体质测试管理系统设计与实现(系统源码+文档+数据库+部署)
面向大学生毕业选题、开题、任务书、程序设计开发、论文辅导提供一站式服务。主要服务:程序设计开发、代码修改、成品部署、支持定制、论文辅导,助力毕设!
23 2
|
25天前
|
存储 安全 Java
Spring Boot 3 集成Spring AOP实现系统日志记录
本文介绍了如何在Spring Boot 3中集成Spring AOP实现系统日志记录功能。通过定义`SysLog`注解和配置相应的AOP切面,可以在方法执行前后自动记录日志信息,包括操作的开始时间、结束时间、请求参数、返回结果、异常信息等,并将这些信息保存到数据库中。此外,还使用了`ThreadLocal`变量来存储每个线程独立的日志数据,确保线程安全。文中还展示了项目实战中的部分代码片段,以及基于Spring Boot 3 + Vue 3构建的快速开发框架的简介与内置功能列表。此框架结合了当前主流技术栈,提供了用户管理、权限控制、接口文档自动生成等多项实用特性。
72 8
|
8天前
|
JavaScript NoSQL Java
基于SpringBoot+Vue实现的冬奥会科普平台设计与实现(系统源码+文档+数据库+部署)
面向大学生毕业选题、开题、任务书、程序设计开发、论文辅导提供一站式服务。主要服务:程序设计开发、代码修改、成品部署、支持定制、论文辅导,助力毕设!
23 0
|
3月前
|
XML Java 数据库连接
SpringBoot集成Flowable:打造强大的工作流管理系统
在企业级应用开发中,工作流管理是一个核心组件,它能够帮助我们定义、执行和管理业务流程。Flowable是一个开源的工作流和业务流程管理(BPM)平台,它提供了强大的工作流引擎和建模工具。结合SpringBoot,我们可以快速构建一个高效、灵活的工作流管理系统。本文将探讨如何将Flowable集成到SpringBoot应用中,并展示其强大的功能。
536 1
|
3月前
|
JavaScript Java 项目管理
Java毕设学习 基于SpringBoot + Vue 的医院管理系统 持续给大家寻找Java毕设学习项目(附源码)
基于SpringBoot + Vue的医院管理系统,涵盖医院、患者、挂号、药物、检查、病床、排班管理和数据分析等功能。开发工具为IDEA和HBuilder X,环境需配置jdk8、Node.js14、MySQL8。文末提供源码下载链接。
|
4月前
|
存储 安全 Java
打造智能合同管理系统:SpringBoot与电子签章的完美融合
【10月更文挑战第7天】 在数字化转型的浪潮中,电子合同管理系统因其高效、环保和安全的特点,正逐渐成为企业合同管理的新宠。本文将分享如何利用SpringBoot框架实现一个集电子文件签字与合同管理于一体的智能系统,探索技术如何助力合同管理的现代化。
173 4