收藏关注不迷路!!
🌟文末获取源码+数据库🌟
感兴趣的可以先收藏起来,还有大家在毕设选题(免费咨询指导选题),项目以及论文编写等相关问题都可以给我留言咨询,希望帮助更多的人
前言
💗博主介绍:✨全网粉丝10W+,CSDN特邀作者、博客专家、CSDN新星计划导师,专注于Java/Python/小程序app/深度学习等计算机设计,主要对象是咱们计算机相关专业的大学生,希望您们都能前途无量!✨💗
👇🏻 精彩专栏 推荐订阅👇🏻
计算机毕业设计设计精品实战案例✅
感兴趣的可以先收藏起来,还有大家在毕设选题,项目以及论文编写等相关问题都可以给我留言咨询,希望帮助更多的人
程序资料获取
🌟文末获取资料🌟
一、项目技术
开发语言:Java
框架:springboot
JDK版本:JDK1.8
服务器:tomcat7
数据库:mysql
数据库工具:Navicat11
开发软件:eclipse/myeclipse/idea
Maven包:Maven
————————————————
二、项目内容和功能介绍
🎈1.项目内容
本文旨在探讨学生成绩管理系统的设计与实现过程。该系统以提高学生成绩管理的效率和质量为目标,通过集成数据库技术、网络技术以及软件开发技术,实现了对学生成绩的全面、自动化管理。
在系统设计阶段,我们首先进行了详细的需求分析,明确了系统的功能需求和非功能需求。然后,我们设计了系统的整体架构,包括数据库设计、界面设计以及系统流程设计。数据库设计方面,我们采用了关系型数据库,设计了包括学生信息表、课程信息表、成绩信息表等多个数据表,以实现对学生、课程和成绩等信息的有效存储和查询。界面设计方面,我们注重用户体验,设计了简洁明了的操作界面,方便用户进行数据的录入、查询和修改。系统流程设计方面,我们明确了数据的输入、处理、输出等各个环节的流程,以确保系统的稳定性和可靠性。
在系统实现阶段,我们采用了面向对象的编程思想,利用Java语言进行系统的开发。我们实现了用户登录、学生信息管理、课程信息管理、成绩录入、成绩查询等多个功能模块。其中,用户登录模块保证了系统的安全性;学生信息管理模块和课程信息管理模块实现了对学生和课程信息的增删改查功能;成绩录入模块和成绩查询模块则实现了对学生成绩的录入和查询功能。此外,我们还利用网络技术,实现了系统的远程访问和数据共享,方便用户随时随地进行成绩管理。
🎈2.功能介绍
本系统主要包含了学生信息管理、成绩信息管理等多个功能模块。下面分别简单阐述一下这几个功能模块需求。不同的权限对应相应的功能模块的需求,管理员权限的级别是最高的,所以所对应的需求是最多的,下面根据不同的权限分别简单阐述一下各个权限的需求。
管理员对应的功能需求如下:
管理员的权限是最高的,可以对系统的学生信息,成绩信息等信息进行统一管理。
管理员可添加管理员,添加更多的管理人员,并且能修改和删除管理员的信息资料。
有关学生信息,管理员可添加学生信息,比如可添加有关学生信息的班级名称,所属专业等信息,添加的学生信息都会显示在系统中,还可以通过关键字进行搜索查询,管理员也可以修改和删除相关的学生信息。
有关教师信息,管理员可添加教师信息,比如可添加有关教师信息的工号,姓名等信息,添加的教师信息都会显示在系统中,还可以通过关键字进行搜索查询,管理员也可以修改和删除相关的教师信息。
有关课程信息,管理员可添加课程信息,比如可添加有关课程信息的课程编号,课程名称等信息,添加的课程信息都会显示在系统中,还可以通过关键字进行搜索查询,管理员也可以修改和删除相关的课程信息。
有关成绩信息,教师可添加成绩信息,比如可添加有关成绩信息的名称,性别,学号、成绩等信息,添加的成绩信息都会显示在系统中,还可以通过关键字进行搜索查询,管理员也可以修改和删除相关的成绩信息。
用户对应的功能需求如下:
用户可以通过系统进行注册,注册完成并通过系统审核的用户可查询,修改自己的基础信息,比如修改登录密码等功能。
三、核心代码
部分代码:
package com.controller;
import java.util.Arrays;
import java.util.Map;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import com.annotation.IgnoreAuth;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.entity.ConfigEntity;
import com.service.ConfigService;
import com.utils.MPUtil;
import com.utils.PageUtils;
import com.utils.R;
import com.utils.ValidatorUtils;
/**
* 登录相关
*/
@RequestMapping("config")
@RestController
public class ConfigController{
@Autowired
private ConfigService configService;
/**
* 列表
*/
@RequestMapping("/page")
public R page(@RequestParam Map<String, Object> params,ConfigEntity config){
EntityWrapper<ConfigEntity> ew = new EntityWrapper<ConfigEntity>();
PageUtils page = configService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, config), params), params));
return R.ok().put("data", page);
}
/**
* 列表
*/
@IgnoreAuth
@RequestMapping("/list")
public R list(@RequestParam Map<String, Object> params,ConfigEntity config){
EntityWrapper<ConfigEntity> ew = new EntityWrapper<ConfigEntity>();
PageUtils page = configService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, config), params), params));
return R.ok().put("data", page);
}
/**
* 信息
*/
@RequestMapping("/info/{id}")
public R info(@PathVariable("id") String id){
ConfigEntity config = configService.selectById(id);
return R.ok().put("data", config);
}
/**
* 详情
*/
@IgnoreAuth
@RequestMapping("/detail/{id}")
public R detail(@PathVariable("id") String id){
ConfigEntity config = configService.selectById(id);
return R.ok().put("data", config);
}
/**
* 根据name获取信息
*/
@RequestMapping("/info")
public R infoByName(@RequestParam String name){
ConfigEntity config = configService.selectOne(new EntityWrapper<ConfigEntity>().eq("name", "faceFile"));
return R.ok().put("data", config);
}
/**
* 保存
*/
@PostMapping("/save")
public R save(@RequestBody ConfigEntity config){
// ValidatorUtils.validateEntity(config);
configService.insert(config);
return R.ok();
}
/**
* 修改
*/
@RequestMapping("/update")
public R update(@RequestBody ConfigEntity config){
// ValidatorUtils.validateEntity(config);
configService.updateById(config);//全部更新
return R.ok();
}
/**
* 删除
*/
@RequestMapping("/delete")
public R delete(@RequestBody Long[] ids){
configService.deleteBatchIds(Arrays.asList(ids));
return R.ok();
}
}
数据库参考
--
-- Current Database: `cl69897133`
--
/*!40000 DROP DATABASE IF EXISTS `cl69897133`*/;
CREATE DATABASE /*!32312 IF NOT EXISTS*/ `cl69897133` /*!40100 DEFAULT CHARACTER SET utf8mb4 */;
USE `cl69897133`;
--
-- Table structure for table `banji`
--
DROP TABLE IF EXISTS `banji`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `banji` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
`addtime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`banji` varchar(200) NOT NULL COMMENT '班级',
PRIMARY KEY (`id`),
UNIQUE KEY `banji` (`banji`)
) ENGINE=InnoDB AUTO_INCREMENT=1710158384061 DEFAULT CHARSET=utf8 COMMENT='班级';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Dumping data for table `banji`
--
LOCK TABLES `banji` WRITE;
/*!40000 ALTER TABLE `banji` DISABLE KEYS */;
INSERT INTO `banji` VALUES (71,'2024-03-11 11:24:15','班级1'),(72,'2024-03-11 11:24:15','班级2'),(73,'2024-03-11 11:24:15','班级3'),(74,'2024-03-11 11:24:15','班级4'),(75,'2024-03-11 11:24:15','班级5'),(76,'2024-03-11 11:24:15','班级6'),(1710158384060,'2024-03-11 11:59:43','102班');
/*!40000 ALTER TABLE `banji` ENABLE KEYS */;
UNLOCK TABLES;
--
-- Table structure for table `banjichengji`
--
DROP TABLE IF EXISTS `banjichengji`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `banjichengji` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
`addtime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`kaoshimingcheng` varchar(200) NOT NULL COMMENT '考试名称',
`fenshu` double NOT NULL COMMENT '分数',
`dengjishijian` datetime DEFAULT NULL COMMENT '登记时间',
`banji` varchar(200) DEFAULT NULL COMMENT '班级',
`jiaoshigonghao` varchar(200) DEFAULT NULL COMMENT '教师工号',
`jiaoshixingming` varchar(200) DEFAULT NULL COMMENT '教师姓名',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1710158690426 DEFAULT CHARSET=utf8 COMMENT='班级成绩';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Dumping data for table `banjichengji`
--
LOCK TABLES `banjichengji` WRITE;
/*!40000 ALTER TABLE `banjichengji` DISABLE KEYS */;
INSERT INTO `banjichengji` VALUES (111,'2024-03-11 11:24:15','数学',90,'2024-03-11 19:24:15','班级1','教师工号1','教师姓名1'),(112,'2024-03-11 11:24:15','考试名称2',2,'2024-03-11 19:24:15','班级2','教师工号2','教师姓名2'),(113,'2024-03-11 11:24:15','考试名称3',3,'2024-03-11 19:24:15','班级3','教师工号3','教师姓名3'),(114,'2024-03-11 11:24:15','考试名称4',4,'2024-03-11 19:24:15','班级4','教师工号4','教师姓名4'),(115,'2024-03-11 11:24:15','考试名称5',5,'2024-03-11 19:24:15','班级5','教师工号5','教师姓名5'),(116,'2024-03-11 11:24:15','考试名称6',6,'2024-03-11 19:24:15','班级6','教师工号6','教师姓名6'),(1710158690425,'2024-03-11 12:04:49','编程',50,'2024-03-11 20:04:59','102班','22','王老师');
/*!40000 ALTER TABLE `banjichengji` ENABLE KEYS */;
UNLOCK TABLES;
--
-- Table structure for table `bumen`
--
DROP TABLE IF EXISTS `bumen`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `bumen` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
`addtime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`bumen` varchar(200) NOT NULL COMMENT '部门',
PRIMARY KEY (`id`),
UNIQUE KEY `bumen` (`bumen`)
) ENGINE=InnoDB AUTO_INCREMENT=1710158347845 DEFAULT CHARSET=utf8 COMMENT='部门';
/*!40101 SET character_set_client = @saved_cs_client */;
四、效果图
五 、资料获取
文章下方名片联系我即可~
精彩专栏推荐订阅:在下方专栏👇🏻
毕业设计精品实战案例
收藏关注不迷路!!
🌟文末获取设计🌟