基于ssm的金桂圆寝室管理系统

本文介绍了以Java为核心,SSM框架为基础,MySQL数据库支持的金桂圆寝室管理系统的设计与开发过程,涵盖了管理员、宿管和学生功能,通过详细描述系统架构、功能模块和核心代码,展示了系统的开发环境和实现流程。
摘要由CSDN通过智能技术生成

前言

  随着社会的不断进步与发展,人们对生活质量要求逐步提升。如果开发一款基于Web的金桂圆寝室管理系统,可以让用户在最短的时间里享受到最好的服务;而开发本系统,又能够提高系统整体工作水平,简化工作程序,这对用户和管理员来说都是一件非常乐意的事情。
本论文针对金桂圆寝室管理系统的特点,以Java为核心,以MySQL为数据库,B/S为系统构架,对金桂圆寝室管理系统进行设计和开发。通过使用本系统可有效地减少运营成本,提高管理效率。

关键词:Java;金桂圆寝室;

一、项目介绍

  金桂圆寝室管理系统主要包括管理员、宿管和喾三大部分。
管理员主要功能为:个人中心、学生管理、宿管管理、楼宇信息管理、宿舍信息管理、住宿信息管理、宿舍更换管理、退宿信息管理等功能。
宿管主要功能为:个人中心、宿舍信息管理、住宿信息管理、宿舍更换管理、退宿信息管理等功能。
学生主要功能为:个人中心、宿舍信息管理、住宿信息管理、宿舍更换管理、退宿信息管理等功能。

二、开发环境

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

三、功能介绍

  本文从金桂圆寝室管理的实际需要出发,为降低系统的耦合性,采用SSM框架完成了系统总体架构的设计,以提高系统的重用性、可适用性及可维护性。
系统包括管理员、学生和宿管三个角色;
管理员用例如下所示:
在这里插入图片描述

图3-1 管理员用例图
宿管用例如下所示:
在这里插入图片描述

图3-2 宿管用例图
学生用例如下所示:
在这里插入图片描述

图3-3学生用例图
系统的非功能需求分析
根据近年来学校的发展情况,结合文献资料,对金桂圆寝室管理的信息化;至此,开发具有一定的技术可行性和安全性。
该系统的核心内容是对个人中心、学生管理、宿管管理、楼宇信息管理、宿舍信息管理、住宿信息管理、宿舍更换管理、退宿信息管理模块的管理。有关的金桂圆寝室管理系统规定如下:
(1)可行性:该体系应具有可行性,并与金桂圆寝室管理相适应。
(2)完整:功能模块可以满足系统的要求。
(3)简单:使用简单,维修简单。
(4)安全:安全的系统。

四、核心代码

部分代码:

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();
    }
}

五、效果图

请添加图片描述

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

六、文章目录

目录

第一章 绪论 2
1.1研究背景 2
1.2社会调查 2
1.3研究意义 3
1.4研究内容 3
第二章 关键技术介绍 4
2.1 Java技术 4
2.2 SSM框架 4
2.3 Tomcat技术 5
2.4 MySQL数据库 5
2.5 B/S模式 5
第三章 系统分析 6
3.1业务需求分析 6
3.2功能需求分析 7
3.3系统的非功能需求分析 8
3.4系统可行性分析 8
3.4.1 技术可行性 8
3.4.2 经济可行性 8
3.4.3 操作可行性 9
3.5 系统流程分析 9
3.5.1 登录流程 9
3.5.2 添加信息流程 9
3.5.3 删除流程 10
第四章 系统设计 11
4.1系统的框架设计 11
4.2系统功能模块设计 11
4.3 数据库设计 12
4.3.1数据库概念设计 12
4.3.2 数据库表设计 14
第五章 系统实现 19
5.1系统登录实现 19
5.2管理员模块实现 19
5.3宿管模块实现 22
5.4学生模块实现 24
第六章 系统测试 26
6.1系统测试的方法 26
6.1.1白盒测试法 26
6.1.2黑盒测试法 26
6.2系统测试用例 27
结论 28
参考文献 29
致 谢 30

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值