教室管理系统后台设计

本文介绍了一个基于SpringBoot和Mybatis的教室管理系统后台设计,涵盖了用户操作、教室信息管理和反馈处理等功能,详细阐述了数据库设计、Dao层、Service层、Utils工具类以及Controller层的实现。
摘要由CSDN通过智能技术生成

教室管理系统后台设计


前言

本系统后端利用springboot+mybatis作为基础架构,实现了对于数据库的操作以及与前端进行交互的RestAPI接口。功能大致分为四类,用户基本操作、教室信息操作、反馈操作以及教室预约操作。本系统实现了前三类功能,教室预约操作本系统没有实现。


一、 实现功能

  1. 用户操作

    管理员操作
    	查看所有用户信息
    	删除用户
    	登录
    普通用户操作
    	登录
    	修改密码
    	修改姓名
    	注册
    
  2. 教室操作

    普通用户操作
    	查看教室信息
    管理员操作
    	增加教室
    	删除教室
    	修改教室信息
    
  3. 反馈操作

    普通用户操作
    	用户提交反馈
    	用户查看自己提交的反馈以及回复
    	查看所有反馈
    管理员操作
    	回复反馈
    

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

二、数据库设计

在这里插入图片描述

User表记录了用户信息,包括普通用户与管理员,通过权限(priority)字段字段进行区分
Classroom表记录了所有教室信息
Feedback表记录了所有反馈的信息,包括反馈时间与管理员回复
RoomRequest表记录了所有的教室请求

二、Dao层

Dao利用mybatis实现了对数据库的crud操作

1.IUserDao

此接口实现了对User表的crud操作

代码如下:

package com.example.demo.Dao;

import com.example.demo.domain.User;
import org.apache.ibatis.annotations.*;
import org.springframework.context.annotation.Bean;
import org.springframework.scheduling.support.SimpleTriggerContext;
import org.springframework.stereotype.Repository;

import java.util.List;

@Mapper
@Repository
public interface IUserDao {
   
	//获取所有的用户信息
    @Select("select *from Users")
    List<User> findAll();

	//插入用户记录
    @Insert("insert into Users(userID,userName,m_password,priority) values(#{userID},#{userName},#{m_password},#{priority})")
    void saveUser(User user);
    
	//根据UserID查询用户信息
    @Select("select *from Users where userID=#{userID}")
    User findByID(@Param("userID") String userID);
    
	//查询特定权限的用户
    @Select("select *from Users where priority=#{priority}")
    List<User> findByPriority(@Param("priority") Integer priority);

	//根据姓名查询用户
    @Select("select *from Users where userName=#{userName}")
    User findByName(@Param("userName") String userName);

	//删除用户
    @Delete("delete from Users where userID=#{userID}")
    void delete(User user);
    
	//更新记录
    @Update("update Users set " +
            "userName=#{userName},m_password=#{m_password},priority=#{priority}" +
            " where userID=#{userID}")
    void update(User user);
    
	 //根据姓名对账号进行模糊搜索
    @Select("select * from Users where userName like CONCAT('%',#{namepart},'%')")
    List<User> findNamePart(@Param("namepart") String namepart);

}

2.IClassRoomDao

此接口实现了对ClassRoom表的查询
代码如下:

package com.example.demo.Dao;

import com.example.demo.domain.ClassRoom;
import org.apache.ibatis.annotations.*;
import org.springframework.stereotype.Repository;

import java.math.BigInteger;
import java.util.List;

@Mapper
@Repository
public interface IClassRoomDao {
   
	//查询所有教室信息
    @Select("select * from ClassRooms")
    List
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值