基于JAVA+SpringBoot的学生成长管理评价系统
✌全网粉丝20W+,csdn特邀作者、博客专家、CSDN新星计划导师、java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌
🍅文末获取项目下载方式🍅
一、项目背景介绍:
学生成长管理评价系统是一种针对学生在学习、生活、心理等方面进行全面评价的信息化管理系统。随着教育信息化的不断发展,传统的评价方式已经无法满足现代教育的需求,因此,基于JAVA+SpringBoot的学生成长管理评价系统的研究和开发具有重要的现实意义。
背景介绍:
教育改革的需求:近年来,我国教育改革不断深入,教育部门对素质教育的重视程度不断提高。在这种背景下,学生成长管理评价系统应运而生,旨在全面评价学生的综合素质,为教育改革提供有力支持。
信息技术的发展:随着互联网技术、大数据技术、人工智能等技术的不断发展,教育信息化已经成为教育改革的重要方向。基于JAVA+SpringBoot的学生成长管理评价系统利用先进的信息技术手段,实现了对学生成长过程的全面、实时、动态的评价,提高了评价的效率和准确性。
个性化教育的需求:每个学生都有自己的特点和优势,传统的评价方式往往忽略了学生的个性化需求。基于JAVA+SpringBoot的学生成长管理评价系统可以根据学生的实际情况,制定个性化的评价方案,帮助学生发现自己的优点和不足,促进学生的全面发展。
家校共育的需求:家庭和学校是学生成长的两个重要环境,家校共育对于学生的成长具有重要意义。基于JAVA+SpringBoot的学生成长管理评价系统可以实现家校之间的信息共享,让家长了解学生在学校的表现,同时也让学校了解学生在家庭的情况,为家校共育提供有力支持。
教师工作负担的减轻:传统的学生评价工作需要教师花费大量的时间和精力进行数据收集、整理和分析。基于JAVA+SpringBoot的学生成长管理评价系统可以实现数据的自动采集、分析和展示,大大减轻了教师的工作负担,提高了工作效率。
二、项目技术简介:
- JAVA:Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程。
- SpringBoot:Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。通过这种方式,Spring Boot致力于在蓬勃发展的快速应用开发领域(rapid application development)成为领导者。
- Mybatis-Plus:MyBatis-Plus(简称 MP)是一个 MyBatis的增强工具,在 MyBatis 的基础上只做增强不做改变,为 简化开发、提高效率而生。
三、系统功能模块介绍:
四、数据库设计:
1:growth_allscore(growth_allscore)
字段名
类型
默认值
列注释
id
int
NULL
userid
int
NULL
学生id
year
varchar
NULL
学年
module
double
NULL
学年平均成绩
kbook
double
NULL
书籍审核成绩
kpaper
double
NULL
发表论文审核成绩
kinnovate
double
NULL
创新课题研究成绩
kcompetition
double
NULL
竞赛审核成绩
kpatent
double
NULL
专利审核成绩
kcertificate
double
NULL
证书审核成绩
svolunteer
double
NULL
志愿服务审核成绩
swork
double
NULL
社会工作审核成绩
rhonor
double
NULL
荣誉申报审核成绩
k
double
NULL
科技综合
s
double
NULL
社会实践综合
allscore
double
NULL
综合总成绩
fail
varchar
NULL
挂科数
2:growth_book(growth_book)
字段名
类型
默认值
列注释
id
int
NULL
bookname
varchar
NULL
书籍名字
dotype
varchar
NULL
出版方式:团队 个人
doscore
double
NULL
自评分数
number
varchar
NULL
出版书数目
year
varchar
NULL
学年
text
text
NULL
备注信息
imgpath
varchar
NULL
材料图片路径
authortype
varchar
NULL
主编,副编,参编
userid
int
NULL
用户id
bookdate
datetime
NULL
提交时间
ypass
varchar
NULL
是否通过
why
varchar
NULL
驳回原因
wordpath
varchar
NULL
文档路径
3:growth_certificate(growth_certificate)
字段名
类型
默认值
列注释
id
int
NULL
certificatename
varchar
NULL
证书名称
certificatetype
varchar
NULL
证书类型
year
varchar
NULL
学年
doscore
double
NULL
自评分数
text
varchar
NULL
备注
imgpath
varchar
NULL
材料图片路径
userid
int
NULL
certificatedate
datetime
NULL
修改时间
why
varchar
NULL
驳回理由
ypass
varchar
NULL
是否通过
wordpath
varchar
NULL
word路径
4:growth_competition(growth_competition)
字段名
类型
默认值
列注释
id
int
NULL
competitionname
varchar
NULL
竞赛项目名
ctype
varchar
NULL
竞赛类型(科技、非科技)
competitiontype
varchar
NULL
竞等级(国家级、省级)
year
varchar
NULL
学年
doscore
double
NULL
自评分数
text
varchar
NULL
备注
imgpath
varchar
NULL
图片路径
authortype
varchar
NULL
团队个人排名
userid
int
NULL
competitiondate
datetime
NULL
修改时间
why
varchar
NULL
驳回理由
ypass
varchar
NULL
是否通过
wordpath
varchar
NULL
word文档路径
5:growth_honor(growth_honor)
字段名
类型
默认值
列注释
id
int
NULL
honorname
varchar
NULL
荣誉项目名
honortype
varchar
NULL
荣誉级别
year
varchar
NULL
学年
doscore
double
NULL
自评分数
text
varchar
NULL
备注
imgpath
varchar
NULL
图片地址
authortype
varchar
NULL
团队形式
userid
int
NULL
honordate
datetime
NULL
修改时间
why
varchar
NULL
驳回原因
ypass
varchar
NULL
是否通过
wordpath
varchar
NULL
文档路径
6:growth_innovate(growth_innovate)
字段名
类型
默认值
列注释
id
int
NULL
innovatename
varchar
NULL
创新创业训练计划项目或课题研究名字
doscore
double
NULL
自评分数
year
varchar
NULL
学年
text
varchar
NULL
备注
imgpath
varchar
NULL
材料图片地址
authortype
varchar
NULL
参与度
innovatetype
varchar
NULL
课题类型(国家级)
progress
varchar
NULL
课题进度,立项目,结算项目
userid
int
NULL
innovatedate
datetime
NULL
更新时间
why
varchar
NULL
驳回理由
ypass
varchar
NULL
是否通过
wordpath
varchar
NULL
word
7:growth_modulescore(growth_modulescore)
字段名
类型
默认值
列注释
id
int
NULL
general
double
NULL
通识必修课成绩
major
double
NULL
专业必修课成绩
ambit
double
NULL
学科基础必修课
public_base
double
NULL
公共基础课
specialized
double
NULL
专业基础课
practice
double
NULL
集中实践教学环节
spacial_week
double
NULL
专周
userid
int
NULL
学生id
averagescore
double
NULL
模块平均成绩
create_date
datetime
NULL
提交时间
year
varchar
NULL
学年
fail
varchar
NULL
挂科数目
8:growth_paper(growth_paper)
字段名
类型
默认值
列注释
id
int
NULL
papername
varchar
NULL
论文名称
number
varchar
NULL
论文数目
year
varchar
NULL
学年
text
varchar
NULL
备注
doscore
double
NULL
自评
imgpath
varchar
NULL
材料地址
authortype
varchar
NULL
作者类型
papertype
varchar
NULL
论文类型
userid
int
NULL
学生id
paperdate
datetime
NULL
修改时间
ypass
varchar
NULL
是否通过
why
varchar
NULL
驳回理由
wordpath
varchar
NULL
word文档路径
9:growth_patent(growth_patent)
字段名
类型
默认值
列注释
id
int
NULL
patentname
varchar
NULL
专利名称
patenttype
varchar
NULL
专利类型
year
varchar
NULL
学年
doscore
double
NULL
自评分数
text
varchar
NULL
备注
imgpath
varchar
NULL
图片地址
authortype
varchar
NULL
作者排名
userid
int
NULL
patentdate
datetime
NULL
修改日期
why
varchar
NULL
理由
ypass
varchar
NULL
是否通过
wordpath
varchar
NULL
word路径
10:growth_rule(growth_rule)
字段名
类型
默认值
列注释
id
int
NULL
type
varchar
NULL
评分标题
contents
text
NULL
评分细则
createtime
datetime
NULL
修改时间
11:growth_volunteer(growth_volunteer)
字段名
类型
默认值
列注释
id
int
NULL
volunteername
varchar
NULL
活动项目名
volunteertype
varchar
NULL
活动项目类型
year
varchar
NULL
学年
doscore
double
NULL
自评分数
text
varchar
NULL
备注
imgpath
varchar
NULL
图片地址
userid
int
NULL
volunteerdate
datetime
NULL
修改日期
why
varchar
NULL
原因
ypass
varchar
NULL
是否通过
wordpath
varchar
NULL
word文件路径
ctype
varchar
NULL
等级(国家级)
12:growth_work(growth_work)
字段名
类型
默认值
列注释
id
int
NULL
worktype
varchar
NULL
校院干部
ctype
varchar
NULL
班级干部
year
varchar
NULL
学年
doscore
double
NULL
自评分数
text
varchar
NULL
备注
imgpath
varchar
NULL
图片路径
userid
int
NULL
workdate
datetime
NULL
修改时间
why
varchar
NULL
驳回理由
ypass
varchar
NULL
是否通过
wordpath
varchar
NULL
文件路径
13:growth_year(growth_year)
字段名
类型
默认值
列注释
id
int
NULL
year
varchar
NULL
学年
yeardate
datetime
NULL
修改时间
14:sys_grade(sys_grade)
字段名
类型
默认值
列注释
id
int
NULL
pid
int
NULL
name
varchar
NULL
open
int
NULL
remark
varchar
NULL
address
varchar
NULL
available
int
NULL
状态【0不可用1可用】
ordernum
int
NULL
排序码【为了调试显示顺序】
createtime
datetime
NULL
15:sys_loginfo(sys_loginfo)
字段名
类型
默认值
列注释
id
int
NULL
loginname
varchar
NULL
loginip
varchar
NULL
logintime
datetime
NULL
16:sys_notice(sys_notice)
字段名
类型
默认值
列注释
id
int
NULL
title
varchar
NULL
content
text
NULL
createtime
datetime
NULL
opername
varchar
NULL
17:sys_permission(sys_permission)
字段名
类型
默认值
列注释
id
int
NULL
pid
int
NULL
type
varchar
NULL
权限类型[menu/permission]
title
varchar
NULL
percode
varchar
NULL
权限编码[只有type= permission才有 user:view]
icon
varchar
NULL
href
varchar
NULL
target
varchar
NULL
open
int
NULL
ordernum
int
NULL
available
int
NULL
状态【0不可用1可用】
18:sys_role(sys_role)
字段名
类型
默认值
列注释
id
int
NULL
name
varchar
NULL
remark
varchar
NULL
available
int
NULL
createtime
datetime
NULL
19:sys_role_permission(sys_role_permission)
字段名
类型
默认值
列注释
rid
int
NULL
pid
int
NULL
20:sys_user(sys_user)
字段名
类型
默认值
列注释
id
int
NULL
name
varchar
NULL
loginname
varchar
NULL
登陆学号
pwd
varchar
NULL
address
varchar
NULL
varchar
NULL
sex
int
NULL
remark
varchar
NULL
gradeid
int
NULL
createdate
datetime
NULL
available
int
NULL
是否可用,0不可用,1可用
type
int
NULL
用户类型[0超级管理员,1管理员,2普通用户]
imgpath
varchar
NULL
用户头像地址
salt
varchar
NULL
盐
21:sys_user_role(sys_user_role)
字段名
类型
默认值
列注释
uid
int
NULL
rid
int
NULL
五、功能模块:
-
登陆:学生,老师,管理员账号登录,忘记密码可邮箱找回。
-
学生界面:学生登录可查看首页公告,可以提交学年成绩,以及相关项目申报
-
教师界面:学生基本管理,各种申报审核
-
管理员界面:系统菜单管理,权限管理,公告管理
-
教师开启学年通道:教师开启学年通道,将数据库中每个学生默认生成成绩表单。
-
学生学年成绩提交:学生选择学年进行成绩提交(前提教师开启),输入各模块成绩和挂科数提交,最后生成提交记录,并且在教师端可以统计学生学年课程成绩。
-
学生申报积分:学生申报项目积分,选择对应模块,填写相关信息,根据评分细则自评分数,提交相关证明材料,交给教师端审核,再审核没有通过前提下,学生可以进行修改,并提交额外word材料(学生可以查看审核状态,驳回可查看理由)
-
教师审核:教师登录即可看到学生申报情况,对学生进行审核,审核对照评分细则进行相关操作(满足评分细则即通过,不满足就驳回,填写驳回理由,(如果有额外材料提交就进行在线文件查看)材料图片可放大查看。
-
成绩综合表单更新:审核通过后,对综合成绩表单进行更新(包括学年成绩和项目申报,加权求出),并降序排名。教师可以进行相关查询和表单打印。
六、代码示例:
/**
* 添加
* @return
*/
@RequestMapping("addCompetitionScore")
public ResultObj addModuleScore(Competition competition){
User user = (User) getSession().getAttribute("user");
competition.setUserid(user.getId());
competition.setYpass("2");
//获取当前时间
competition.setCompetitiondate(new Date());
//防止增加数据库信息年份重复
QueryWrapper<Competition> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("userid",user.getId());
queryWrapper.eq("year",competition.getYear());
int count = competitionService.count(queryWrapper);
if(count>0){
return ResultObj.MODULE_SCORE_REPEAT_ERROR;
}else{
try {
if (competition.getImgpath()!=null&&competition.getImgpath().endsWith("_temp")){
String newName = AppFileUtils.renameFile(competition.getImgpath());
competition.setImgpath(newName);
}
competitionService.save(competition);
return ResultObj.MODULE_SCORE_SUCCESS;
} catch (Exception e) {
e.printStackTrace();
return ResultObj.MODULE_SCORE_ERROR;
}
}
}
/**
* 查询学生个人提交记录
* @param competition
* @return
*/
@RequestMapping("loadCompetitionScore")
public DataGridView loadCompetition(Competition competition){
QueryWrapper<Competition> queryWrapper = new QueryWrapper<>();
User user = (User) getSession().getAttribute("user");
queryWrapper.eq("userid",user.getId());
List<Competition> list = competitionService.list(queryWrapper);
return new DataGridView(list);
}
/**
* 删除学生个人提交项目成绩数据
* @param id
* @return
*/
@RequestMapping("deleteCompetition")
public ResultObj deleteCompetition(Integer id){
try {
competitionService.removeById(id);
return ResultObj.DELETE_SUCCESS;
} catch (Exception e) {
e.printStackTrace();
return ResultObj.DELETE_ERROR;
}
}
七、项目总结:
基于JAVA+SpringBoot的学生成长管理评价系统的开发制作,从题目确定到成品完成,自己投入的精力与心血是非常多的。从基于JAVA+SpringBoot的学生成长管理评价系统的前台页面实现,到基于JAVA+SpringBoot的学生成长管理评价系统的后台代码的编辑,我用到的软件包括了数据库软件MySQL,Java开发工具IDEA,办公软件Office,浏览器软件Fireworks,图像处理软件Photoshop等,这也是我第一次使用Java语言,开发的这个比较简单的基于JAVA+SpringBoot的学生成长管理评价系统。
基于JAVA+SpringBoot的学生成长管理评价系统开发过程中,自己之前觉得比较抽象的许多门课程,例如数据库原理,软件工程,动态网站开发等课程开始变得很清晰,只有自己独立开发程序,才会觉得这些开发类的课程在实践中具有的重要作用。为了让自己设计的作品能够顺利的完成,我把所学知识全部运用在程序的开发流程中,包括了程序的需求分析环节,程序的编码环节,程序的测试环节等,让程序软件在开发周期内完成制作,并能够保证程序质量达标,力求程序开发流程规范化,程序对应的配套文档标准化。
本次开发的系统整体界面还是比较清晰简明,功能上面考虑得比较全,几乎可以满足用户使用要求。尽管我对这次的毕设付出了许多的努力,但是程序还是有很多不足的地方,系统界面整体感觉还行,但是字体字号的选取上面还是有些不符合现实审美,在程序的CSS样式编码上面,我还有许多不熟悉的地方,虽然经过反复的测试与调试选中了现在这样的程序界面,但是我还是明显感觉到自己对一些常用CSS样式的不熟悉,编码过程中,我还要多次进行资料查看才知道。另外我编写的代码写作不是很规范,可读性比较差,幸运的是,我最终还是实现了系统中所要求的功能。
基于JAVA+SpringBoot的学生成长管理评价系统现已完成了开发,除了基本功能可以符合用户需求外,在页面设计层面上没有融入更多的设计元素,需要从美学角度进行优化,另外在程序的代码层面,也有许多重合部分,需要进行整理归类,让代码变得更加的简洁。
实践出真知,但是知识也是通过实践变得更加深刻,这次作品制作,让自己的专业知识水平与解决问题的能力得到了提高。也让自己更加明白活到老学到老的真正含义。
总的说来,这次编写毕业设计作品,我真正锻炼了自己的实际操作能力,以前只知道理论知识,现在通过实践,我对理论知识的认识变得更加深刻,由于编写程序时间比较短暂,程序开发期间遇到过很多坎坷,但最后都通过老师还有同学帮忙解决了,可以说这次的毕设作品进展得还算顺利。
八、源码获取:
大家点赞、收藏、关注、评论啦 、查看👇🏻👇🏻👇🏻获取项目下载链接,博主联系方式👇🏻👇🏻👇🏻
链接点击直达:下载链接