[免费]SpringBoot+Vue学生成绩管理系统【论文+源码+SQL脚本】

news2024/11/24 1:34:06

大家好,我是java1234_小锋老师,看到一个不错的SpringBoot+Vue学生成绩管理系统,分享下哈。

项目视频演示

【免费】SpringBoot+Vue学生成绩管理系统 Java毕业设计_哔哩哔哩_bilibili

项目介绍

随着计算机互联网技术的不断发展,不断改变着人们的工作、生活习惯,而在国内的各大高校的信息化建设也不断提高,达到提供工作效率,在学校众多学生的成绩统计分析效率是高校领导面前最为突出的问题,因此学生的成绩管理毫无疑问是十分重要的,因为大批量的学生信息管理而产生的巨大的工作量的问题,给学校带来非常大的压力。在过去的很长的一段时间,学校和教师对于学生的成绩进行管理,往往是采用纸质化的形式进行管理,这就会使得对学生成绩管理的效率相对低下,尤其是在近些年,各个学校的招生人数都在明显增加的情况下,因此非常有必要开发一套针对学生成绩进行管理的系统,用于解决以上存在的问题,提升管理众多学生成绩的统计效率,并且也能够让学生更好和更全面的了解自己的个人成绩,方便学校管理人员、教师和学生的使用,达到科学管理学生成绩的目标。

拥有着一套对学生成绩进行管理的系统,能否被师生和管理人员接受也是非常重要的,因此我们有必要在设计的时候能够易于使用者使用,如学生查询成绩形式的多样,能够查询到全面的信息,在教师使用时,录入成绩能够更加便携多样,在查找所需要的信息时也能够更加的快捷高效,各个功能也都能很容易被找到,并且能够迅速上手,使用十分便利,以便能够让该系统更容易的被师生所接受,因此系统在设计的考虑上,这一点是非常重要的。

系统展示

部分代码

package com.nchu.student_score.controller;

import com.github.pagehelper.PageInfo;
import com.nchu.student_score.model.Admin;
import com.nchu.student_score.service.AdminService;
import com.nchu.student_score.vo.ResultVo;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import javax.annotation.Resource;

@RestController
@RequestMapping("/admin")
public class AdminController {
    @Resource
    AdminService adminService;

    @RequestMapping("addOneAdmin/{superAdminKey}")
    public ResultVo<Admin> addOneAdmin(@RequestBody Admin input,@PathVariable String superAdminKey){
        return adminService.addOneAdmin(input, superAdminKey);
    }

    @RequestMapping("adminPwdInit/{superAdminKey}")
    public ResultVo<Admin> adminPwdInit(@RequestBody Admin input,@PathVariable String superAdminKey){
        return adminService.adminPwdInit(input, superAdminKey);
    }

    @RequestMapping("getAdminList/{currPage}")
    public PageInfo<Admin> getAdminList(@RequestBody Admin admin, @PathVariable Integer currPage){
        return adminService.getAdminList(admin,currPage);
    }

    @RequestMapping("updateOneAdmin/{superAdminKey}")
    public ResultVo<Admin> updateOneAdmin(@RequestBody Admin input,@PathVariable String superAdminKey){
        return adminService.updateOneAdmin(input,superAdminKey);
    }
}
<template>
    <div id="background">
        <el-card class="box-card" style="background-color: rgba(64,64,64,0.35)">
            <el-form :model="ruleForm" :rules="rules" ref="ruleForm">
                <el-form-item style="text-align: center">
                    <span style="font-size: 30px;">欢 迎 使 用</span>
                </el-form-item>
                <el-form-item prop="id" style="text-align: center">
                    <span style="margin-right: 2%">用 户 名 : </span>
                    <el-input style="width: 60%;" placeholder="请输入用户名" v-model="ruleForm.id"/>
                </el-form-item>
                <el-form-item prop="password" style="text-align: center">
                    <span style="margin-right: 2%">{{'密 \u3000 码 : '}}</span>
                    <el-input style="width: 60%;" placeholder="请输入密码" v-model="ruleForm.password" show-password/>
                </el-form-item>

                <el-form-item prop="type" style="text-align: center;">
                    <el-radio-group v-model="ruleForm.type">
                        <el-radio label="admin"><span>管理员</span></el-radio>
                        <el-radio label="teacher"><span>教师</span></el-radio>
                        <el-radio label="student"><span>学生</span></el-radio>
                    </el-radio-group>
                </el-form-item>
                <el-form-item style="text-align:center">
                    <el-button type="primary" @click="submitForm('ruleForm')">立即登录</el-button>
                    <el-button style="margin-left:60px" @click="resetForm('ruleForm')">重置</el-button>
                </el-form-item>
            </el-form>
    
        </el-card>

    </div>


</template>

<script>
    export default {
        data() {
            return {
                ruleForm: {
                    id: '',
                    password:'',
                    type: '',
                },
                rules: {
                    id: [
                        { required: true, message: '请输入用户名', trigger: 'blur' },
                    ],
                    password: [
                        { required: true, message: '请输入密码', trigger: 'blur' },
                        { min: 6, max: 18, message: '长度在 6 到 18 个字符', trigger: 'blur' }
                    ],
                    type: [
                        { required: true, message: '请选择用户类型', trigger: 'change' }
                    ]
                }
            };
        },
        created(){

        },
        methods:{
            submitForm(formName) {
                this.$refs[formName].validate((valid) => {//校验格式
                    if (valid) {//格式校验通过
                        let path = 'http://localhost:8081/login/' + this.ruleForm.type;
                        this.$ajax.post(path,this.ruleForm).then(res=>{
                            alert(res.data.message);
                            if(res.data.status === 0){//0为登录成功 1为用户名错误 2为用户名或密码不匹配
                                sessionStorage.setItem("id",JSON.stringify(res.data.obj.id));
                                sessionStorage.setItem("name",JSON.stringify(res.data.obj.name));
                                sessionStorage.setItem("password",JSON.stringify(res.data.obj.password));
                                sessionStorage.setItem("type",JSON.stringify(res.data.obj.type));
                                this.$router.push("/" + res.data.obj.type + '/main');
                            }
                        })
                    }
                    else {
                        return false;
                    }
                });
            },
            resetForm(formName) {//重置
                this.$refs[formName].resetFields();
            }
        }
    }
</script>

<style scoped>
    span{
        font-size: 20px;
        font-weight: bold;
        color: #ffffff;
    }
    .box-card{
        width: 600px;
        margin:200px auto;
    }
    #background{
        background:url('../../img/01.jpeg');
        width:100%;
        height:100%;
        position:fixed;
        background-size:100% 100%;
    }
</style>

源码代码

链接:https://pan.baidu.com/s/1NUeKwsnuvLD1xiDv5bhOxg
提取码:1234

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

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

相关文章

接口测试(九)jmeter——关联(JSON提取器)

一、JSON提取器介绍 要检查的响应字段&#xff1a;样本数据源引用名称&#xff1a;可自定义设置引用方法&#xff1a;${引用变量名}匹配数字 匹配数字含义-1表示全部0随机1第一个2第二个…以此类推 缺省值&#xff1a;匹配失败时的默认值ERROR&#xff0c;可以不写 二、js…

【MyBatis源码】SqlSessionFactoryBuilder源码分析

文章目录 概述类结构从 InputStream 创建 SqlSessionFactoryXMLConfigBuilder构建ConfigurationXMLConfigBuilder初始化方法parse()方法parseConfiguration属性&#xff08;properties&#xff09; 概述 SqlSessionFactory 是 MyBatis 的核心接口之一&#xff0c;提供创建 Sql…

鸿蒙原生应用开发及部署:首选华为云,开启HarmonyOS NEXT App新纪元

目录 前言 HarmonyOS NEXT&#xff1a;下一代操作系统的愿景 1、核心特性和优势 2、如何推动应用生态的发展 3、对开发者和用户的影响 华为云服务在鸿蒙原生应用开发中的作用 1、华为云ECS C系列实例 &#xff08;1&#xff09;全维度性能升级 &#xff08;2&#xff…

SQLite3库增删改查实现数据管理

1. SQLite3简介 SQLite3是一个轻量级的、嵌入式的关系型数据库管理系统&#xff0c;在保存测序数据或结果等时可使用&#xff0c;简单高效&#xff0c;并且有无需服务器、单文件存储数据、支持标准SQL、支持跨平台等优势。 本文以Sqlite3数据库为基础&#xff0c;创建代码示例…

【实验八】前馈神经网络(4)优化问题

1 参数初始化 模型构建 模型训练 优化 完整代码 2 梯度消失问题 模型构建 模型训练 完整代码 3 死亡Relu问题 模型构建 模型训练 优化 完整代码 1 参数初始化 实现一个神经网络前&#xff0c;需要先初始化模型参数。如果对每一层的权重和偏置都用0初始化&#xff0…

Vscode配置CC++编程环境的使用体验优化和补充说明

文章目录 快速编译运行&#x1f47a;code runner插件方案Code Runner Configuration 直接配置 相关指令和快捷键默认task配置和取消默认 配置文件补充介绍(可选 推荐阅读)&#x1f60a;使用vscode预置变量和环境变量环境变量的使用使用环境变量的好处环境变量可能引起的问题 检…

计算机网络:网络层 —— IPv4 地址与 MAC 地址 | ARP 协议

文章目录 IPv4地址与MAC地址的封装位置IPv4地址与MAC地址的关系地址解析协议ARP工作原理ARP高速缓存表 IPv4地址与MAC地址的封装位置 在数据传输过程中&#xff0c;每一层都会添加自己的头部信息&#xff0c;最终形成完整的数据包。具体来说&#xff1a; 应用层生成的应用程序…

【秋冬进补】灵芝玉叶膏冬令上选减补两不误

秋冬季不仅是进补季&#xff0c;也是肥胖增涨的季节&#xff0c;气温降低了&#xff0c;运动、户外活动量减少了&#xff0c;消耗吸收率减慢&#xff0c;饮食中肉类比例上升&#xff0c;绿蔬少了&#xff0c;油热量增加了&#xff0c;肥胖几率也一样增加了。因此&#xff0c;选…

HTML5 + CSS3 + JavaScript 编程语言学习教程

HTML5 CSS3 JavaScript 编程语言学习教程 欢迎来到这篇关于 HTML5、CSS3 和 JavaScript 的详细学习教程&#xff01;无论你是初学者还是有一定基础的开发者&#xff0c;这篇文章都将帮助你深入理解这三种技术的核心概念、语法和应用。 目录 HTML5 1.1 HTML5 简介1.2 HTML5 …

10月第4周AI资讯

阅读时间&#xff1a;3-4min 更新时间&#xff1a;2024.10.21-2024.10.25 目录 CoI-Agent&#xff1a;一键生成科研idea的AI研究助手 波兰电台正式启用 AI 主播 Claude可以像人类一样使用计算机 简单文本即可创建个性化语音 AI音乐制作工具新突破 CoI-Agent&#xff1a;…

[TypeError]: type ‘AbstractProvider‘ is not subscriptable

升级pdm到2.20.0后&#xff0c;执行pdm add --dev mypy时报错了&#xff1a; INFO: Adding group dev to lockfile Adding packages to dev dev-dependencies: pytest, pdm, ruff, click, mypy ⠋ 0:00:00 Resolving dependencies See /Users/mac10.12/Library/Logs/pdm/pdm-l…

(大开眼界)想要数据安全,企业需要选择正确的数据备份方案!七种常见数据备份策略方法及优缺点分析!

信息化时代&#xff0c;数据已成为企业的核心资产&#xff0c;其重要性不言而喻。 然而&#xff0c;随着数据价值的不断提升&#xff0c;其脆弱性也愈加明显。自然灾害、硬件故障、人为错误以及恶意攻击等因素&#xff0c;都可能导致数据的丢失或损坏。 因此&#xff0c;选择…

微信公众号(或微信浏览器)获取openId(网页授权)

下单支付需要openId 首先授权去拿到code --然后调用后太换取openId 1.去拿取code 下图中执行到window.location.href &#xff08; redirect_uri 传入当前路径-&#xff09;–执行后重新跳转到当前页面–但是路径上会带上code参数 //然后调用后台方法–将code传给后台得到 o…

如何找到优质的抖音视频素材

随着短视频的流行&#xff0c;越来越多的人开始拍摄和分享自己的作品。但很多创作者常常遇到一个问题&#xff1a;视频素材从哪里来&#xff1f;今天&#xff0c;我就为大家推荐一些优秀的网站&#xff0c;帮助你轻松找到优质的抖音视频素材。 蛙学网 首先推荐的是蛙学网。这个…

django快速基本配置(2)

知识星球 | 深度连接铁杆粉丝&#xff0c;运营高品质社群&#xff0c;知识变现的工具 目录 配置开发目录 配置MySQL数据库 配置Redis数据库 配置工程日志 用户注册 跨域CORS 注意 配置开发目录 libs 存放第三方的库文件 utils 存放项目自己定义的公共函数或类等 apps 存…

【SQL】SQL函数

&#x1f4e2; 前言 函数 是指一段可以直接被另一段程序调用的程序或代码。主要包括了以下4中类型的函数。 字符串函数数值函数日期函数流程函数 &#x1f384; 字符串函数 ⭐ 常用函数 函数 功能 CONCAT(S1,S2,...Sn) 字符串拼接&#xff0c;将S1&#xff0c;S2&#xff0…

Javaweb 实验4 xml

我发现了有些人喜欢静静看博客不聊天呐&#xff0c; 但是ta会点赞。 这样的人呢帅气低调有内涵&#xff0c; 美丽大方很优雅。 说的就是你&#xff0c; 不用再怀疑哦 实验四 XML 目的&#xff1a; 安装和使用XML的开发环境认识XML的不同类型掌握XML文档的基本语法了解D…

第二十章 Vue组件通信之父子通信

目录 一、引言 二、组件关系分类 三、组件通信的解决方案 3.1. 父子通信流程图 3.2. 父组件通过 props 将数据传递给子组件 3.2.1. 代码App.vue 3.2.2. 代码MySon.vue 3.3. 子组件利用 $emit 通知父组件修改更新 ​编辑3.3.1. 代码App.vue 3.3.2. 代码MySon.vue 3…

使用GDAL库的ogr2ogr将GeoJSON数据导入到PostgreSql中

数据下载 数据下载地址&#xff1a;https://datav.aliyun.com/portal/school/atlas/area_selector 我这里下载全国所有城市的数据进行导入 下载安装GDAL 以下是安装 ogr2ogr&#xff08;GDAL 工具集的一部分&#xff09;的步骤&#xff0c;适用于 Windows、macOS 和 Linux 系…

pycharm configurations中配置运行fastapi项目

环境 windows11 python3.11 fastapi0.115 使用virtualenv安装fastapi uvicorn pip install fastapi pip install uvicorn目的 在pycharm中可以一键运行&#xff0c;直接把命令行的运行参数配置到pycharm中, 即使用"uvicorn main:app --reload"运行main文件 配置 …