说明学习委员之作业管理系统—后端部分

news2025/2/26 0:27:39

项目背景

学习委员收集作业的过程,繁琐且曲折,作者充分理解并体谅为大家服务的苦逼学习委员,以此为出发点和灵感,设计并开发了此套作业管理系统,希望能帮助各位提高效率,早日摆脱重复机械式的工作,欢迎二开,如有更多的创意和建议,欢迎留言!

环境

基于SpringBoot2

涉及技术

  • Spring
  • SpringMVC
  • SpringSecurity
  • MyBatisPlus
  • Redis
  • Druid
  • Java IO

功能

  • 身份验证(角色分为三个)
    • 系统管理员
    • 普通管理员(通常为班委,只比系统管理员少了人员管理)
    • 普通用户(只能提交和下载自己的作业文件)
  • 个人作业提交(仅user用户)
    • 只能提交和下载该批次下自己的作业
  • 课程管理(仅system和normal管理员)
    • 一个课程对应一个系统中的同名文件夹,文件夹下有若干的批次文件夹
  • 批次管理(仅system和normal管理员)
    • 归属于所属课程
    • 一个批次对应一个系统中的同名文件夹,存在于所属课程文件夹下,提交的作业文件都存储在这里
  • 作业提交详情(仅system和normal管理员)
    • 支持一键下载指定批次全部文件
    • 支持下载单个已交人员提交的作业
    • 支持查看指定批次已交人员
    • 支持查看指定批次未交人员,可导出为Excel文件,可邮件提醒指定已绑定邮箱的用户
  • 人员管理(仅system管理员)
  • 个人信息管理
    • 支持修改密码和邮箱,目前不支持密码找回,如忘记密码需联系系统管理员修改

后续展望

  • 加入群组功能,针对小组作业

部署

  • 下载项目导入到IntelliJ Idea

  • 创建数据库,运行建表SQL,>SQL建表脚本

  • 不管是本地还是服务器上记得安装Redis!

  • 修改配置文件(application-pro.yml)

    • 将数据库配置改为自己的

    • 将邮件配置为自己的

  • 运行maven打包插件

    • 点击package

    • 在target目录下会生成一个以【.jar】为后缀的文件

      • 使用宝塔面板部署到服务器

      • 或命令行运行

        java -jar jar文件路径
        

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/829305.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Vue3和TypeScript_页面

1 在views下新建myView.view 2 在router文件夹里,配置路径,按需引入组件 3 浏览器通过路径访问页面

pycharm——涟漪散点图

from pyecharts import options as opts from pyecharts.charts import EffectScatterc (EffectScatter().add_xaxis( ["高等数学1,2","C语言程序设计","python程序设计","大数据导论","数据结构","大数据…

旺店通·企业奇门和用友U8接口打通对接实战

旺店通企业奇门和用友U8接口打通对接实战 接通系统:旺店通企业奇门 慧策最先以旺店通ERP切入商家核心管理痛点——订单管理,之后围绕电商经营管理中的核心管理诉求,先后布局流量获取、会员管理、仓库管理等其他重要经营模块。慧策的产品线从旺…

QT学习笔记-QT5.15 + MSVC编译套件时编译日志及运行日志日志乱码解决

QT学习笔记-QT5.15 MSVC编译套件时编译日志及运行日志日志中文乱码解决 0、基础环境1、QtCreator中的基本设置编辑->首选项->文本编辑器 2、问题1:MSVC编译日志乱码问题解决问题描述解决方法 3、问题2:MSVC构建套件编译后程序运行日志乱码问题问题…

多雷达探测论文阅读笔记:雷达学报 2023, 多雷达协同探测技术研究进展:认知跟踪与资源调度算法

多雷达协同探测技术 原始笔记链接:https://mp.weixin.qq.com/s?__biz=Mzg4MjgxMjgyMg==&mid=2247486627&idx=1&sn=f32c31bfea98b85f2105254a4e64d210&chksm=cf51be5af826374c706f3c9dcd5392e0ed2a5fb31ab20924b7dd38e1b1ae32abe9a48afa8174#rd ↑ \uparrow …

Redis—全局命令

Redis—全局命令 🔎get / set🔎常用全局命令keysexistsdelexpirettlkey 的过期策略type Redis 官网 Redis 中的命令不区分大小写 进入 Redis 客户端 redis-cli -h Redis 服务器的 IP 地址 -p Redis 服务器的端口号省略 -h 表示 Redis 服务器的 IP 地址…

【ASP.NET MVC】数据库访问(5)

一、ORM简介 对象关系映射(Object Relational Mapping,简称ORM)模式是一种为了解决面向对象与关系数据库存在的互不匹配的现象的技术。 以上是官话,个人理解: 1、解决问题:数据库的访问 2、如何解决&a…

Vue路由:Vue Router

Vue Router 介绍 Vue Router 是 Vue.js (opens new window) 官方的路由管理器。 核心深度集成,包含的功能有: 嵌套的路由/视图表 模块化的、基于组件的路由配置 路由参数、查询、通配符基于 Vue.js 过渡系统的视图过渡效果 细粒度的导航控制 Vue Rou…

学习系统编程No.33【生产消费模型】

引言: 北京时间:2023/7/22/14:27,现实和预期往往相差是巨大的,哈哈哈!白天睡不醒,晚上睡不着,就像一个夜猫子一样。熬夜耍手机,我真的是专业的,已经连续好久没有正常睡过…

【C++】类和对象 - 中

目录 1. 类的6个默认成员函数2. 构造函数2.1 概念2.2 特性3.3 默认构造函数 3. 析构函数3.1 概念3.2 特性 4. 拷贝构造函数4.2 概念4.3 特性4.3 传参或作返回值 5. 赋值运算符重载5.1 运算符重载5.2 赋值运算符重载5.3 前后置 --重载5.4 自定义类型的输出输出 6. const成员函数…

SAP MM学习笔记15-物料调达中的Master数据(1)-仕入先Master

SAP中做一个购买发注的时候,涉及到以下Master数据: 1,仕入先Master(供应商):跟谁买 2,品目Master(物料):买什么 3,购买情报:什么价…

电脑误删除环境变量Path

今天在搞环境变量 一不注意手一滑把Path删除了,当时惊了一身冷汗,幸好看见有别人讲的补救措施,赶紧记录一下: 首先进入注册表winR,输入regedit: 在注册表编辑器中进入到【HKEY_LOCAL_MACHINE\SYSTEM\Contr…

基于 STM32自研多任务+SpringBoot+Vue 农业大棚智能调光系统

工作以后常常容易感到疲于奔命,即使在周末也没有得到高质量的休息。打工人/学生党如何过周末?你有哪些延长周末和下班时间的好方法吗?- 方法就是多积累,多发博客,将感悟全写出来!!,接…

Python——调用webdriver.Chrome() 报错

今天运行脚本&#xff0c;报错内容如下&#xff1a; collecting ... login_case.py:None (login_case.py) login_case.py:11: in <module> dr webdriver.Chrome() D:\Program Files (x86)\Python\Python39\Lib\site-packages\selenium\webdriver\chrome\webdriver.p…

改造 dify 项目适配自建的 OpenAI API 服务

改造 dify 项目适配自建的 OpenAI API 服务 0. 背景1. 修改默认的 api_base 地址2. 修改 openai_provider.py3. 重新构建 docker 镜像4. 修改 docker-compose.yaml5. 启动项目 0. 背景 项目 https://github.com/langgenius/dify.git 的 OpenAI 配置项目里&#xff0c;现在(202…

01-1 搭建 pytorch 虚拟环境

pytorch 管网&#xff1a;PyTorch 一 进入 Anaconda 二 创建虚拟环境 conda create -n pytorch python3.9注意要注意断 VPN切换镜像&#xff1a; 移除原来的镜像 # 查看当前配置 conda config --show channels conda config --show-sources# 移除之前的镜像 conda config --…

力扣初级算法(二分查找)

力扣初级算法(二分法)&#xff1a; 每日一算法&#xff1a;二分法查找 学习内容&#xff1a; 给定一个排序数组和一个目标值&#xff0c;在数组中找到目标值&#xff0c;并返回其索引。如果目标值不存在于数组中&#xff0c;返回它将会被按顺序插入的位置。 2.二分查找流程&…

解密外接显卡:笔记本能否接外置显卡?如何连接外接显卡?

伴随着电脑游戏和图形处理的需求不断增加&#xff0c;很多笔记本电脑使用者开始考虑是否能够通过外接显卡来提升性能。然而&#xff0c;外接显卡对于笔记本电脑是否可行&#xff0c;以及如何连接外接显卡&#xff0c;对于很多人来说仍然是一个迷。本文将为您揭秘外接显卡的奥秘…

javax.servlet.ServletException: Servlet[dispatcher]的Servlet.init()引发异常----解决方法

目录 javax.servlet.ServletException: Servlet[dispatcher]的Servlet.init&#xff08;&#xff09;引发异常----解决方法 问题&#xff1a;报500错&#xff1a; 解决方法 运行结果 javax.servlet.ServletException: Servlet[dispatcher]的Servlet.init&#xff08;&#x…

linux文件描述符fd

文件描述符 fd是一个>0 的整数 每打开一个文件&#xff0c;就创建一个文件描述符&#xff0c;通过文件描述符来操作文件 预定义的文件描述符: 0:标准输入&#xff0c;对应于已打开的标准输入设备(键盘) 1:标准输出&#xff0c;对应于已打开的标准输出设备(控制台) 2.标准错误…