基于SSM的宿舍管理系统

一、 项目背景

为了实现提高学生宿舍管理的工作效率;充分利用资源;减少不必要的人力,物力和财力的支出;方便宿舍管理部门的工作人员全面地掌握学生住宿情况等目的;为宿舍管理部门,开发设计专用系统学生宿舍管理系统来进行管理学生宿舍信息,使学生宿舍信息实现标准化的管理和规范化的制度是十分必要的。专用系统是一个信息管理系统它将实现检索迅速和查找方便;信息的录入,修改和删除功能。

二、 项目介绍

基于SSM的宿舍管理系统

角色:管理员、宿舍管理员、学生

管理员功能:
1、管理通知类型、通知信息
2、管理院系信息、班级信息、宿舍楼信息、宿舍信息
3、添加宿管信息、学生信息
4、查看报修信息、来访人员信息、宿舍评分、缺勤信息

宿管功能:
1、查看通知
2、查看本宿舍楼的学生信息
3、来访人员信息、宿舍评分、缺勤信息
4、查看报修、回复报修

学生功能:
1、查看通知信息
2、报修、查看回复
4、查看来访人员信息、宿舍评分、缺勤信息

三、 运行环境

开发语言:Java

开发工具:IDEA,Eclipse,Myeclipse都可以。推荐IDEA

JDK版本:1.8

数据库: MySQL5.7

Tomcat环境:Tomcat 7.x,8.x,9.x版本均可

项目管理:Maven

四、项目技术

后端:SSM(Spring+SpringMVC+Mybatis)

前端:JSP+CSS+JS+JQUERY+Layui

五.运行截图(点图片可放大)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

六、代码实现:

  /**
     * 后端列表
     */
    @RequestMapping("/page")
    public R page(@RequestParam Map<String, Object> params,TongzhileixingEntity tongzhileixing, 
		HttpServletRequest request){
    
    

        EntityWrapper<TongzhileixingEntity> ew = new EntityWrapper<TongzhileixingEntity>();
    	PageUtils page = tongzhileixingService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, tongzhileixing), params), params));
		request.setAttribute("data", page);
        return R.ok().put("data", page);
    }
    
    /**
     * 前端列表
     */
	@IgnoreAuth
    @RequestMapping("/list")
    public R list(@RequestParam Map<String, Object> params,TongzhileixingEntity tongzhileixing, 
		HttpServletRequest request){
    
    
        EntityWrapper<TongzhileixingEntity> ew = new EntityWrapper<TongzhileixingEntity>();
    	PageUtils page = tongzhileixingService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, tongzhileixing), params), params));
		request.setAttribute("data", page);
        return R.ok().put("data", page);
    }

	/**
     * 列表
     */
    @RequestMapping("/lists")
    public R list( TongzhileixingEntity tongzhileixing){
    
    
       	EntityWrapper<TongzhileixingEntity> ew = new EntityWrapper<TongzhileixingEntity>();
      	ew.allEq(MPUtil.allEQMapPre( tongzhileixing, "tongzhileixing")); 
        return R.ok().put("data", tongzhileixingService.selectListView(ew));
    }

	 /**
     * 查询
     */
    @RequestMapping("/query")
    public R query(TongzhileixingEntity tongzhileixing){
    
    
        EntityWrapper< TongzhileixingEntity> ew = new EntityWrapper< TongzhileixingEntity>();
 		ew.allEq(MPUtil.allEQMapPre( tongzhileixing, "tongzhileixing")); 
		TongzhileixingView tongzhileixingView =  tongzhileixingService.selectView(ew);
		return R.ok("查询通知类型成功").put("data", tongzhileixingView);
    }
	
    /**
     * 后端详情
     */
    @RequestMapping("/info/{id}")
    public R info(@PathVariable("id") Long id){
    
    
        TongzhileixingEntity tongzhileixing = tongzhileixingService.selectById(id);
        return R.ok().put("data", tongzhileixing);
    }

    /**
     * 前端详情
     */
	@IgnoreAuth
    @RequestMapping("/detail/{id}")
    public R detail(@PathVariable("id") Long id){
    
    
        TongzhileixingEntity tongzhileixing = tongzhileixingService.selectById(id);
        return R.ok().put("data", tongzhileixing);
    }
    



    /**
     * 后端保存
     */
    @RequestMapping("/save")
    public R save(@RequestBody TongzhileixingEntity tongzhileixing, HttpServletRequest request){
    
    
    	tongzhileixing.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
    	//ValidatorUtils.validateEntity(tongzhileixing);

        tongzhileixingService.insert(tongzhileixing);
        return R.ok();
    }
    
    /**
     * 前端保存
     */
    @RequestMapping("/add")
    public R add(@RequestBody TongzhileixingEntity tongzhileixing, HttpServletRequest request){
    
    
    	tongzhileixing.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
    	//ValidatorUtils.validateEntity(tongzhileixing);

        tongzhileixingService.insert(tongzhileixing);
        return R.ok();
    }

    /**
     * 修改
     */
    @RequestMapping("/update")
    public R update(@RequestBody TongzhileixingEntity tongzhileixing, HttpServletRequest request){
    
    
        //ValidatorUtils.validateEntity(tongzhileixing);
        tongzhileixingService.updateById(tongzhileixing);//全部更新
        return R.ok();
    }
    

    /**
     * 删除
     */
    @RequestMapping("/delete")
    public R delete(@RequestBody Long[] ids){
    
    
        tongzhileixingService.deleteBatchIds(Arrays.asList(ids));
        return R.ok();
    }
    

七、项目总结:

过程永远比结果重要。毕业设计是大学生活中最为浓墨重彩的一笔,在这个过程中不仅学到更为全面的书本和实践知识,更让我感受到了浓浓的同窗之情及师生情。虽然大学四年间做过不少实验作业,但是独立完成这样一个操作系统还是第一次,遇到困难时理所当然,我也有所心理准备,但是超出自身能力的部分还是需要寻求教师及同学的帮助。在此,我衷心地感谢我的指导教师,可以说,没有教师我就不能顺利完成这次设计。他总是在一筹莫展的时候为我指引方向。比如在开题报告,我的指导教师就细致地指导我该怎么有逻辑地将自己的想法和做法表达清楚,在此由衷感谢他。在设计的过程中,教师百忙之中也乐于给予我指导,不管多晚给教师发消息,不管是不是上班时间去教师办公室寻求帮助,他总能在第一时间对我施以援手,由于我在设计期间需要离校实习,不能及时到教师办公室检查设计进度,当时已经是晚上6点多,我匆匆赶到办公室时,教师依然在伏案办公,桌上是同学们的中期检查报告,检查完毕业设计后,他又继续查看同学们的中期报告,并督促我及时上交报告。教师给的意见总是一针见血地指出我设计及论文中的不足,并举例详细说明我的改进方法,不得不佩服他的学术水平及教学水平。在我开始着手实现这个设计的时候,通过需求分析及可行性分析对该系统有了较为浅显的认识;但是在我真正开始实现时发现事情并没有这么简单。任何成功都不是一蹴而就的,就算是一个简单的毕业设计也需要日积月累的知识和经验。于是,我便去寻求老师和同学的帮助,这也使得我得以从不同的角度重新考虑我的设计。终于,这个系统在我内心有了雏形。在真正实现这个设计的过程中,学习新知识是必定的,同时那些由于时间关系或者本来就没有掌握牢固的知识也有了进一步巩固的机会。然而最重要的是了解到如何作为一个开发人员,以开发人员的思维来看待软件开发的步骤和方法策略。

猜你喜欢

转载自blog.csdn.net/weixin_44209743/article/details/128810025