基于Java的学生宿舍管理系统的设计

一、项目介绍

  
本系统采用的数据库是Mysql,运行环境使用Tomcat服务器,ECLIPSE 是本系统的开发平台。在设计过程中,充分保证了系统代码的良好可读性、实用性、易扩展性、通用性、便于后期维护、操作方便以及页面简洁等特点。

关键字:学生宿舍管理系统 Mysql数据库 ECLIPSE

二、开发环境

开发语言:Java
框架:springboot
JDK版本:JDK1.8
服务器:tomcat7
数据库:mysql
数据库工具:Navicat11
开发软件:eclipse/myeclipse/idea
Maven包:Maven
————————————————

三、功能介绍

  根据现实需要,此系统我们设计出一下功能,主要有以下功能模板。
(1)学生宿舍管理系统前台:首页、物品遗失、公告信息、留言板、后台管理、个人中心。
(2)学生功能:首页、个人中心、门禁信息管理、报修信息管理、物品遗失管理、费用信息管理。
(3)宿管功能:首页、个人中心、门禁信息管理、报修信息管理、费用信息管理。
(4)辅导员功能;首页、个人中心、学生管理、迁入信息管理、迁出信息管理。
(5)管理员功能:首页、个人中心、学生管理、宿管管理、辅导员管理、门禁信息管理、迁入信息管理、迁出信息管理、报修信息管理、物品遗失管理、费用信息管理、留言板管理、系统管理。
在系统的功能设计方面,学生宿舍管理系统的设计目标是便于更好地管理学生宿舍,因此抽取了满足管理员、学生基本业务需求的基本用例,如图3-1、3-2所示。
在这里插入图片描述

图3-1 管理员功能用例图
在这里插入图片描述

图3-2 学生功能用例图

四、核心代码

部分代码:

package com.example.controller;

import cn.hutool.core.util.StrUtil;
import cn.hutool.crypto.SecureUtil;
import com.example.common.Result;
import com.example.common.ResultCode;
import com.example.entity.Caiwu;
import com.example.exception.CustomException;
import com.example.service.CaiwuService;
import com.example.utils.MapWrapperUtils;
import com.example.utils.jwt.JwtUtil;
import com.example.vo.CaiwuVo;
import org.springframework.beans.BeanUtils;
import org.springframework.web.bind.annotation.*;

import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

@RestController
@RequestMapping(value = "/caiwu")
public class CaiwuController {

    @Resource
    private CaiwuService caiwuService;

    @PostMapping
    public Result<Caiwu> add(@RequestBody CaiwuVo caiwu) {
        caiwuService.add(caiwu);
           return Result.success(caiwu);
    }
	
	

    @PostMapping("/deleteList")
    public Result<Caiwu> deleteList(@RequestBody CaiwuVo caiwu) {
        caiwuService.deleteList(caiwu.getList());
        return Result.success();
    }

    @DeleteMapping("/{id}")
    public Result delete(@PathVariable Long id) {
        caiwuService.delete(id);
        return Result.success();
    }

    @PutMapping
    public Result update(@RequestBody CaiwuVo caiwu) {
        caiwuService.update(caiwu);
        return Result.success();
    }

    @GetMapping("/{id}")
    public Result<Caiwu> detail(@PathVariable Integer id) {
        Caiwu caiwu = caiwuService.findById(id);
        return Result.success(caiwu);
    }

    @GetMapping
    public Result<List<Caiwu>> all() {
        return Result.success(caiwuService.list());
    }

    @PostMapping("/page")
    public Result<CaiwuVo> page(@RequestBody CaiwuVo caiwuVo) {
        return Result.success(caiwuService.findPage(caiwuVo));
    }
	    @PostMapping("/login")
    public Result login(@RequestBody Caiwu caiwu, HttpServletRequest request) {
        if (StrUtil.isBlank(caiwu.getZhanghao()) || StrUtil.isBlank(caiwu.getMima())) {
            throw new CustomException(ResultCode.PARAM_LOST_ERROR);
        }
        Caiwu login = caiwuService.login(caiwu);
//        if(!login.getStatus()){
//            return Result.error("1001","状态限制,无法登录系统");
//        }
        if(login != null) {
            HashMap hashMap = new HashMap();
            hashMap.put("user", login);
            Map<String, Object> map = MapWrapperUtils.builder(MapWrapperUtils.KEY_USER_ID,caiwu.getId());
            String token = JwtUtil.creatToken(map);
            hashMap.put("token", token);
            return Result.success(hashMap);
        }else {
            return Result.error();
        }
    }
    @PutMapping("/updatePassword")
    public Result updatePassword(@RequestBody Caiwu info, HttpServletRequest request) {
        Caiwu caiwu = caiwuService.findById(info.getId());
        String oldPassword = SecureUtil.md5(info.getMima());
        if (!oldPassword.equals(caiwu.getMima())) {
            return Result.error(ResultCode.PARAM_PASSWORD_ERROR.code, ResultCode.PARAM_PASSWORD_ERROR.msg);
        }
        info.setMima(SecureUtil.md5(info.getNewPassword()));
        Caiwu caiwu1 = new Caiwu();
        BeanUtils.copyProperties(info, caiwu1);
        caiwuService.update(caiwu1);
        return Result.success();
    }
}

五、效果图

请添加图片描述

请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述

六、文章目录

目 录
第一章 绪 论 1
1.1背景及意义 1
1.2国内外研究概况 1
1.3 研究的内容 2
第2章 系统开发工具 3
2.1 Java介绍 3
2.2 B/S模式 3
2.3 MySQL数据库 3
2.4 SpringBoot框架 4
2.5 Vue开发技术 4
2.6 JavaScript简介 5
3 系统分析 5
3.1 概述 5
3.2 功能需求 5
3.3 非功能性需求 7
3.4 系统特色 8
3.5 可行性研究 8
3.5.1财务上的适用性 8
3.5.2技术上的适用性 8
3.5.3运行的可能性 8
3.6系统总体设计 8
3.6.1系统设计结构 9
3.6.2系统架构设计 9
4 系统总体设计 9
4.1 系统架构设计 9
4.1.1体系结构 9
4.1.2 系统功能结构设计 10
4.2 系统数据库设计 10
4.2.1 数据库设计概述 10
4.2.2 数据库表的设计 11
第五章 系统功能实现 11
5.1注册与登录模块 11
5.1.1登录模块 11
5.1.2注册模块 12
5.2管理员功能模块 13
5.2.1管理员 13
5.2.2学生管理 13
5.2.3宿管管理 14
5.2.4门禁信息管理 14
第六章 系统的测试 15
6.1功能测试 15
6.2性能测试 17
6.3测试总结 17
第七章 总结 19
致谢 20
参考文献 21

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值