首页 > 数据库 >[免费]SpringBoot+Vue3校园宿舍管理系统(优质版)【论文+源码+SQL脚本】

[免费]SpringBoot+Vue3校园宿舍管理系统(优质版)【论文+源码+SQL脚本】

时间:2024-11-13 10:45:05浏览次数:3  
标签:return SpringBoot error 宿舍 源码 Result SQL import public

大家好,我是java1234_小锋老师,看到一个不错的SpringBoot+Vue3校园宿舍管理系统(优质版),分享下哈。

项目视频演示

【免费】SpringBoot+Vue3校园宿舍管理系统(优质版) Java毕业设计_哔哩哔哩_bilibili

项目介绍

随着信息技术的不断发展,现代化的校园管理需求日益增多,尤其在校园宿舍管理方面,传统的手工管理方式已经无法满足日益增长的需求。为提高校园宿舍管理的效率和信息化水平,本文设计并实现了一种基于Spring Boot与Vue.js技术栈的校园宿舍管理系统。

系统采用了前后端分离的架构,前端使用Vue.js框架开发,后端使用Spring Boot框架进行开发。前端通过Vue.js与后端Spring Boot的RESTful API进行交互,确保了系统的高效性与灵活性。在数据存储方面,采用MySQL数据库进行管理,确保了数据的稳定性和高效访问。

该系统主要实现了宿舍信息管理、学生信息管理、宿舍查询、住宿申请、宿舍调换、宿舍维护等功能。管理员可以通过系统进行宿舍的分配、调整与管理,学生则可以通过系统提交住宿申请、查看宿舍信息以及进行其他宿舍相关操作。系统还提供了完善的权限管理机制,确保不同角色(如管理员、学生)只能访问相应的功能模块。

在实现过程中,采用了Spring Boot的自动配置与依赖注入机制,简化了后端开发的复杂度,提高了开发效率。前端方面,Vue.js框架配合Element UI组件库,使得界面简洁美观,操作流畅。通过模块化、组件化开发,保证了系统的可维护性和可扩展性。

本文通过对系统的设计与实现进行分析,验证了基于Spring Boot和Vue.js的校园宿舍管理系统能够有效提高宿舍管理的效率,减少人工操作,提高管理透明度,满足现代化校园管理的需求。

系统展示

部分代码

package com.example.springboot.controller;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.example.springboot.common.Result;
import com.example.springboot.entity.Student;
import com.example.springboot.entity.User;
import com.example.springboot.service.StudentService;
import org.apache.commons.lang.StringUtils;
import org.springframework.web.bind.annotation.*;

import javax.annotation.Resource;
import javax.servlet.http.HttpSession;

@RestController
@RequestMapping("/stu")
public class StudentController {

    @Resource
    private StudentService studentService;

    /**
     * 添加学生信息
     */
    @PostMapping("/add")
    public Result<?> add(@RequestBody Student student) {
        int i = studentService.addNewStudent(student);
        if (i == 1) {
            return Result.success();
        } else {
            return Result.error("-1", "添加失败");
        }

    }

    /**
     * 更新学生信息
     */
    @PutMapping("/update")
    public Result<?> update(@RequestBody Student student) {
        if (StringUtils.equals("test",student.getUsername())){
            return Result.error("-1", "禁止修改测试账号");
        }
        int i = studentService.updateNewStudent(student);
        if (i == 1) {
            return Result.success();
        } else {
            return Result.error("-1", "更新失败");
        }
    }

    /**
     * 删除学生信息
     */
    @DeleteMapping("/delete/{username}")
    public Result<?> delete(@PathVariable String username) {
        if (StringUtils.equals("test",username)){
            return Result.error("-1", "禁止删除测试账号");
        }
        int i = studentService.deleteStudent(username);
        if (i == 1) {
            return Result.success();
        } else {
            return Result.error("-1", "删除失败");
        }
    }

    /**
     * 查找学生信息
     */
    @GetMapping("/find")
    public Result<?> findPage(@RequestParam(defaultValue = "1") Integer pageNum,
                              @RequestParam(defaultValue = "10") Integer pageSize,
                              @RequestParam(defaultValue = "") String search) {
        Page page = studentService.find(pageNum, pageSize, search);
        if (page != null) {
            return Result.success(page);
        } else {
            return Result.error("-1", "查询失败");
        }
    }

    /**
     * 学生登录
     */
    @PostMapping("/login")
    public Result<?> login(@RequestBody User user, HttpSession session) {
        System.out.println(user.getUsername());
        System.out.println(user.getPassword());
        Object o = studentService.stuLogin(user.getUsername(), user.getPassword());
        if (o != null) {
            System.out.println(o);
            //存入session
            session.setAttribute("Identity", "stu");
            session.setAttribute("User", o);
            return Result.success(o);
        } else {
            return Result.error("-1", "用户名或密码错误");
        }
    }

    /**
     * 主页顶部:学生统计
     */
    @GetMapping("/stuNum")
    public Result<?> stuNum() {
        int num = studentService.stuNum();
        if (num > 0) {
            return Result.success(num);
        } else {
            return Result.error("-1", "查询失败");
        }
    }


    /**
     * 床位信息,查询是否存在该学生
     * 床位信息,查询床位上的学生信息
     */
    @GetMapping("/exist/{value}")
    public Result<?> exist(@PathVariable String value) {
        Student student = studentService.stuInfo(value);
        if (student != null) {
            return Result.success(student);
        } else {
            return Result.error("-1", "不存在该学生");
        }
    }
}
<template>
  <div class="login-container">
    <div style="margin-right: 150px; min-width: 300px">
      <img alt="" src="../../public/login_Team.png" style="width: 600px"/>
    </div>
    <div style="width: 400px; margin: 150px auto">
      <div style="color: black; font-size: 30px; text-align: left; padding: 30px 0">登陆</div>
      <el-form ref="form" :model="form" :rules="rules" size="large">
        <el-form-item prop="username">
          <el-input v-model="form.username" clearable prefix-icon="avatar"></el-input>
        </el-form-item>
        <el-form-item prop="password">
          <el-input v-model="form.password" prefix-icon="lock" show-password></el-input>
        </el-form-item>
        <el-form-item :model="form" prop="identity">
          <el-radio v-model="form.identity" label="stu" style="color: grey">学生</el-radio>
          <el-radio v-model="form.identity" label="dormManager" style="color: grey">宿舍管理员</el-radio>
          <el-radio v-model="form.identity" label="admin" style="color: grey">系统管理员</el-radio>
        </el-form-item>
        <el-form-item>
          <el-button :disabled="!disabled" style="width: 20%" type="primary" @click="login">登 录</el-button>
        </el-form-item>
       

      </el-form>
    </div>
  </div>
</template>
<script src="@/assets/js/Login.js"></script>
<style scoped>@import '../assets/css/Login.css';</style>

源码代码

链接:https://pan.baidu.com/s/1YpH1s4Lm26kWirb9dth28w
提取码:1234

标签:return,SpringBoot,error,宿舍,源码,Result,SQL,import,public
From: https://blog.csdn.net/caoli201314/article/details/143694229

相关文章

  • SpringBoot基础入门篇
    SpringBoot就是来快速构建spring项目的一门技术,而spring是javaE开发必不可少的框架。也是现在目前的企业中也被广泛应用。概述SpringBoot提供了一种快速使用Spring的方式,基于约定优于配置的思想,可以让开发人员不必在配置与逻辑业务之间进行思维的切换,全身心的投入到逻辑业务的代......
  • Sql优化技巧总结(面试必刷!!!)
    摘要    近段时间,面试官关于Sql优化的提问已经越来越多了,Sql优化可以说是已经成为了面试必备技能之一。本文从Sql语句、硬件设备以及Java程序三个方面详细的讲解关于Sql优化的技巧。目录摘要一、Sql语句优化1、避免使用Select*总结2、使用(创建)索引2.1、不能......
  • 解决高版本laravel/framework中SQLServer2008分页报错问题
    前提:laravel自6.0后就明确了支持的SQLServer版本最低为2017,而SQLServer是在2012版本后,引入的offset语法来实现分页,在此之前只能使用ROW_NUMBER()函数来完成分页。问题:生产环境的SQLServer由于历史原因,仍旧使用的2008版本,自然是不支持offset语法的,而新建项目使用的laravel版本......
  • SpringBoot校园社团活动管理系统t8w5k 程序+源码+数据库+调试部署+开发环境
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表系统内容:社员,社长,社团介绍,社员社团,社团类别,社团新闻,活动申请,社员活动申请开题报告内容一、选题背景与意义随着高校教育的快速发展,社团活动已成为培养学......
  • SpringBoot校园社交平台2t366 程序+源码+数据库+调试部署+开发环境
    题目:SpringBoot校园社交平台2t366进度安排:(1)2024年11月1日-2024年11月15日 确定选题,下达任务书,撰写开题报告;(2)2024年11月15日-2024年12月20日提交开题报告定稿;(3)2024年12月21日-2025年3月14日 完成选题的设计、论文大纲的撰写;(4)2025年3月15日-2025年3月21日  毕业(设......
  • 启动mysql报错“服务没有响应控制功能”
    启动mysql服务器报错,如图: 解决方案:1、查看path环境变量配置正确2、查看初始化配置文件正确[mysqld]#设置3306端口port=3306#设置mysql的安装目录basedir=D:\\mysql-8.0.40-winx64#设置mysql数据库的数据的存放目录datadir=D:\\mysql-8.0.40-winx64\\data#允......
  • Freesql、SqlSugar测试有感
    突然心血来潮测试了一下Freesql和SqlSugar的批量插入和批量更新性能,一搜测评一大堆,但是没找到自己想要的结果,自己动手测试一下基本的批量插入和批量更新性能。废话不多说直接贴代码1usingFreeSql;2usingFreeSql.DataAnnotations;3usingSqlSugar;45namesp......
  • MYSQL将一行数据的多列值放到另一列的多个行中
    在MySQL中,如果你想要将一行数据的多列值放到另一列的多个行中,你可以使用一个辅助表(例如,使用nums表)来生成序列,然后与你的原始表进行联接。比如下面一行一行数据,包含col1~col5总共5列,现在需要将这5类转换到一列中。转换前的数据:转换后的结果: 以下是一个示例:首先,创建一个辅......
  • SpringBoot 处理 CORS 跨域请求的三种方法
    原文链接:SpringBoot处理CORS跨域请求的三种方法–每天进步一点点 0.前言pringboot跨域问题,是当前主流web开发人员都绕不开的难题。但我们首先要明确以下几点跨域只存在于浏览器端,不存在于安卓/ios/Node.js/python/java等其它环境跨域请求能发出去,服务端能收到请求并......
  • flask基金投资网(毕设源码+论文)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容一、选题背景随着金融市场的不断发展,基金投资在全球范围内受到广泛关注。关于基金投资相关的研究,现有研究主要以基金的市场表现、投资策略等为主。......