经典项目学生信息管理系统SpringBoot+MyBatis-Plus+Layui (展示+源码)

项目简介

学生管理系统(student management system),前端使用Layui开发,后端使用Springboot + MyBatis plus 快速开发,项目实现了基本的增、(可批量)删、改以及分页条件查询。数据库使用常见MySQL。
文末有完整源码获取方式。

数据库设计

管理员表

CREATE TABLE `t_admin`  (
  `id` int NOT NULL AUTO_INCREMENT COMMENT '主键',
  `username` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '用户名',
  `password` varchar(128) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '密码',
  PRIMARY KEY (`id`) USING BTREE
) 

班级表

CREATE TABLE `t_clazz`  (
  `id` int NOT NULL AUTO_INCREMENT COMMENT '主键',
  `name` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '班级名称',
  `info` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '班级简介',
  `teacher_name` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '班导名称',
  PRIMARY KEY (`id`) USING BTREE
)

课程表

CREATE TABLE `t_course`  (
  `id` int NOT NULL AUTO_INCREMENT,
  `name` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '课程名称',
  `teacher_name` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '导师',
  `course_date` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '课程日',
  `course_time` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '课程时间',
  `selected_num` int NULL DEFAULT 0 COMMENT '已选人数',
  `max_num` int NULL DEFAULT 50 COMMENT '最大人数',
  `info` varchar(128) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '简介',
  PRIMARY KEY (`id`) USING BTREE
)

分数表

CREATE TABLE `t_score`  (
  `id` int NOT NULL AUTO_INCREMENT,
  `student_name` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '学生名称',
  `course_name` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '课程名称',
  `score` int NULL DEFAULT NULL COMMENT '分数',
  `info` varchar(128) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '简介',
  PRIMARY KEY (`id`) USING BTREE
) 

学生表

CREATE TABLE `t_student`  (
  `id` int NOT NULL AUTO_INCREMENT,
  `name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '真实姓名',
  `password` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '密码',
  `sex` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '性别',
  `phone` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '手机',
  `email` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '邮箱',
  `class_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '班级名称',
  PRIMARY KEY (`id`) USING BTREE
) 

导师表

CREATE TABLE `t_teacher`  (
  `id` int NOT NULL AUTO_INCREMENT,
  `name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '姓名',
  `password` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '密码',
  `sex` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '性别',
  `phone` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '手机号',
  PRIMARY KEY (`id`) USING BTREE
) 

项目演示图

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述在这里插入图片描述
在这里插入图片描述
Controller简单案例

@Controller
@RequestMapping("/student")
public class StudentController {

    @Autowired
    private IStudentService studentService;

    @GetMapping("/toView")
    public String index() {
        return "Student";
    }

    @GetMapping("/toEditView")
    public String toAddView() {
        return "Student_edit";
    }

    @GetMapping("/")
    @ResponseBody
    public ResultDto findAll() {
        ResultDto success = success(studentService.list());
        success.setCount((int) studentService.count());
        return success;
    }

    @PostMapping("/findByParamAndLimit")
    @ResponseBody
    public ResultDto findByParam(String studentString, Integer limit, Integer page) {
        Student student = JSONUtil.toBean(studentString, Student.class);
        QueryWrapper<Student> queryWrapper = new QueryWrapper<>();
        queryWrapper.eq(student.getId() != null, "id", student.getId());
        queryWrapper.like(Strings.isNotBlank(student.getName()), "name", student.getName());
        queryWrapper.like(Strings.isNotBlank(student.getPassword()), "password", student.getPassword());
        queryWrapper.like(Strings.isNotBlank(student.getSex()), "sex", student.getSex());
        queryWrapper.like(Strings.isNotBlank(student.getPhone()), "phone", student.getPhone());
        queryWrapper.like(Strings.isNotBlank(student.getEmail()), "email", student.getEmail());
        queryWrapper.like(Strings.isNotBlank(student.getClassName()), "class_name", student.getClassName());
        Page<Student> studentPage = studentService.page(new Page<>(page, limit), queryWrapper);
        ResultDto success = success(studentPage.getRecords());
        success.setCount((int) studentPage.getTotal());
        return success;
    }

    @GetMapping("/{id}")
    @ResponseBody
    public ResultDto findById(@PathVariable String id) {
        return success(studentService.getById(id));
    }

    @PostMapping("/add")
    @ResponseBody
    public ResultDto add(@RequestBody Student student) {
        return success(studentService.save(student));
    }

    @PostMapping("/update")
    @ResponseBody
    public ResultDto update(@RequestBody Student student) {
        return success(studentService.updateById(student));
    }

    @GetMapping("/delete/{id}")
    @ResponseBody
    public ResultDto delete(@PathVariable String id) {
        return success(studentService.removeById(id));
    }

    @PostMapping("/deleteBatch")
    @ResponseBody
    public ResultDto delete(@RequestBody List<String> ids) {
        return success(studentService.removeBatchByIds(ids));
    }

}

项目还有很多可扩展点,学习了解后可在源码上练手完善。✈️

源码免费获取

关注微信公众号 菜鸟乐编程,然后发送:源码05学生信息管理系统
开发有成本,还希望多尊重,多支持!🫡
在这里插入图片描述

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 博客管理系统 ### #Springboot ## 主要功能 * 系统用户,角色,权限增删改查,权限分配,权限配色 * 文件上传可自由选择本地存储,七牛云存储,阿里云存储 * 系统字典 * 配置网站基本信息,包括博客数据限制 * 查看系统关键操作的日志(可在系统后台自动定制需要监控的模板) * 在线新增数据库并直接生成 前,后台基本码,放到码相应目录中重启tomcat可直接使用,预览 * 系统定时任务的新增改查 立即启动 暂停 恢复 ## 技术框架 * 核心框架:`SpringBoot` * 安全框架:`Apache Shiro 1.3.2` * 缓存框架:`Redis 4.0` * 搜索框架:`Lucene 7.1` * 任务调度:`quartz 2.3` * 持久层框架:`MyBatis 3` mybatisplus 2.1.4 * 数据库连接池:`Alibaba Druid 1.0.2` * 日志管理:`SLF4J 1.7`、`Log4j` * 前端框架:`layui` * 后台模板:layuicms 2.0。 * 富文本:wangEditor ### 开发环境 建议开发者使用以下环境,这样避免版本带来的问题 * IDE:`eclipse`/`idea` * DB:`Mysql5.7` `Redis` * JDK:`JAVA 8` * WEB:Tomcat8 (采用springboot框架开发时,并没有用到额外的tomcat 用的框架自带的) # 运行环境 * WEB服务器:`Weblogic`、`Tomcat`、`WebSphere`、`JBoss`、`Jetty` 等 * 数据库服务器:`Mysql5.5+` * 操作系统:`Windows`、`Linux` (Linux 大小写特别敏感 特别要注意,还有Linux上没有微软雅黑字体,需要安装这个字体,用于生成验证码) #用户名:admin 密码:123456 #数据库文件:mysiteforme.sql #数据库配置文件:mysiteforme下的src/main/resources下的application.yml #启动文件:mysiteforme下的com.mysiteforme.admin下的MysiteformeApplication.java #注意:启动之前先启动redis # http://localhost:8080 管理员用户名:test 密码:1

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值