摘 要
随着高校教育信息化的不断推进,高校学生工作管理系统的设计与实现变得尤为重要。该系统旨在为高校学生、教师和管理者提供一个集成化的平台,以便管理学生信息、学生成绩、党建信息、学生就业、社会实践、学生考勤、处罚通报、奖励通报、班级干部、留言信息、校园活动以及活动报名等各项工作。通过该系统,学校可以更好地管理学生数据和活动信息,促进学生全面发展和实现个性化管理,同时提高学校管理效率。
本文将介绍一个基于JavaWeb技术开发的高校学生工作管理系统的设计与实现。该系统将涵盖学生信息管理、学生成绩管理、党建信息管理、学生就业管理、社会实践管理、学生考勤管理、处罚通报管理、奖励通报管理、班级干部管理、留言信息管理、校园活动管理、活动报名管理等多个模块,以满足学校全方位的管理需求。
在系统设计与实现过程中,我们将充分利用JavaWeb技术的优势,包括JSP、Servlet、JDBC等技术,结合数据库技术、前端技术以及安全技术,构建一个稳定、安全、高效的高校学生工作管理系统。
通过本文的介绍,读者将了解到高校学生工作管理系统的设计思路、功能特点以及技术实现细节,为高校提供了一种全新的学生管理解决方案,有助于促进学校教务管理的现代化和信息化水平提升。
关键词:高校学生工作管理系统;SSM;JavaWeb技术
Management of College Student Work Based on JavaWeb
Design and Implementation of the System
ABSTRACT
With the continuous advancement of information technology in higher education, the design and implementation of student work management systems in universities have become particularly important. The system aims to provide an integrated platform for college students, teachers, and administrators to manage various tasks such as student information, student grades, party building information, student employment, social practice, student attendance, punishment notification, reward notification, class cadres, message information, campus activities, and activity registration. Through this system, schools can better manage student data and activity information, promote comprehensive student development and achieve personalized management, while improving school management efficiency.
This article will introduce the design and implementation of a university student work management system developed based on JavaWeb technology. The system will cover multiple modules, including student information management, student performance management, party building information management, student employment management, social practice management, student attendance management, punishment notification management, reward notification management, class cadre management, message information management, campus activity management, and activity registration management, to meet the comprehensive management needs of the school.
In the process of system design and implementation, we will fully utilize the advantages of JavaWeb technology, including JSP, Servlet, JDBC and other technologies, combined with database technology, front-end technology, and security technology, to build a stable, secure, and efficient university student work management system.
Through the introduction of this article, readers will understand the design ideas, functional characteristics, and technical implementation details of the university student work management system, providing a new student management solution for universities, which helps to promote the modernization and informatization level of school academic management.
Keywords: College Student Work Management System; SSM; JavaWeb technology
目 录
1.1. 课题背景和意义
在信息化快速发展的今天,高校作为培养人才的摇篮,其学生工作管理面临着日益复杂和多变的挑战。传统的学生工作管理方式,如纸质档案、人工记录等,不仅效率低下,而且容易出错,无法满足现代高校对学生信息管理的精准、高效和实时性的要求。因此,基于JavaWeb的高校学生工作管理系统的设计与实现,显得尤为重要。
该系统旨在通过整合高校的学生信息资源,利用先进的互联网技术,构建一个集学生信息管理、数据分析、决策支持等功能于一体的综合性管理平台。通过这一系统,高校管理人员可以更加便捷地录入、查询、修改和统计学生信息,实现学生信息的数字化、网络化和智能化管理。同时,该系统还可以提供强大的数据分析功能,帮助管理者深入了解学生群体的特点和需求,为制定更加科学、合理的学生工作政策提供有力支持。
此外,基于JavaWeb的高校学生工作管理系统还具有高度的可扩展性和可定制性。通过引入先进的开发框架和技术,该系统可以轻松地与其他校园信息化系统进行集成,实现数据共享和流程协同。同时,系统还支持灵活的定制开发,可以根据不同高校的实际需求进行个性化定制,满足不同高校的学生工作管理需求。
综上所述,基于JavaWeb的高校学生工作管理系统的设计与实现,不仅有助于提升高校学生工作管理的效率和水平,还有助于推动高校信息化建设的深入发展。通过该系统的建设和应用,可以更好地服务于广大学生和管理人员,为高校的人才培养和社会发展做出积极贡献。
1.2 国内外研究现状
基于JavaWeb的高校学生工作管理系统的设计与实现学生信息管理在国内外都受到了广泛的关注和研究。
在国内,随着教育信息化进程的加快,越来越多的高校开始引入基于JavaWeb的学生工作管理系统。这些系统不仅提供了基本的学生信息管理功能,如学生信息录入、查询、修改等,还结合云计算、大数据等先进技术,实现了学生信息的深度挖掘和分析,为高校的学生工作提供了有力的决策支持。同时,国内的研究者和开发团队也在不断探索和创新,致力于提升系统的性能、稳定性和用户体验,以满足高校日益增长的学生工作管理需求。
在国外,特别是发达国家,学生工作管理系统的应用已经相当成熟。这些系统不仅具备完善的学生信息管理功能,还融入了先进的教学理念和技术支持,如个性化学习路径推荐、智能辅导等。同时,国外的研究者也在关注系统的安全性和隐私保护,确保学生信息的安全和合规性。
总的来说,基于JavaWeb的高校学生工作管理系统的设计与实现学生信息管理在国内外都取得了显著的进展和成果。然而,随着技术的不断发展和高校需求的不断变化,仍需进一步的研究和创新,以推动系统的不断完善和发展。
1.3论文结构与章节安排
论文将分层次经行编排,除去论文摘要致谢文献参考部分,正文部分还会对系统需求做出分析,以及阐述大体的设计和实现的功能,最后罗列部分调测记录,论文主要架构如下:
第一章:引言。第一章主要介绍了课题的研究背景和意义,选题开发的国内外研究现状和本文的研究内容与主要工作。
第二章:系统需求分析。主要从系统的用户、功能等方面进行需求分析。
第三章:系统设计。主要对系统框架、系统功能模块、数据库进行功能设计。
第四章:系统实现。主要介绍了系统框架搭建、系统界面的实现。
第五章:系统测试。主要对系统的部分界面进行测试并对主要功能进行测试
第六章:总结。
1.4 ssm框架介绍
SSM(Spring+SpringMVC+MyBatis)框架集由Spring、MyBatis两个开源框架整合而成(SpringMVC是Spring中的部分内容)。常作为数据源较简单的web项目的框架。
1.4.1 Spring
Spring就像是整个项目中装配bean的大工厂,在配置文件中可以指定使用特定的参数去调用实体类的构造方法来实例化对象。也可以称之为项目中的粘合剂。
Spring的核心思想是IoC(控制反转),即不再需要程序员去显式地`new`一个对象,而是让Spring框架帮你来完成这一切。
1.4.2 SpringMVC
SpringMVC在项目中拦截用户请求,它的核心Servlet即DispatcherServlet承担中介或是前台这样的职责,将用户请求通过HandlerMapping去匹配Controller,Controller就是具体对应请求所执行的操作。SpringMVC相当于SSH框架中struts。
1.4.3 mybatis
mybatis是对jdbc的封装,它让数据库底层操作变的透明。mybatis的操作都是围绕一个sqlSessionFactory实例展开的。mybatis通过配置文件关联到各实体类的Mapper文件,Mapper文件中配置了每个类对数据库所需进行的sql语句映射。在每次与数据库交互时,通过sqlSessionFactory拿到一个sqlSession,再执行sql命令。
页面发送请求给控制器,控制器调用业务层处理逻辑,逻辑层向持久层发送请求,持久层与数据库交互,后将结果返回给业务层,业务层将处理逻辑发送给控制器,控制器再调用视图展现数据。
2.1 可行性分析
2.1.1技术可行性
高校学生工作管理系统在技术上是完全可行的。SSM框架作为业界广泛使用的轻量级、开源的Java Web开发框架,具有成熟稳定、高效灵活的特点,能够满足高校学生工作管理系统的技术需求。Spring提供全面的编程和配置模型,SpringMVC实现了模型-视图-控制器的设计模式,而MyBatis则简化了数据库操作。三者结合使用,可以确保系统具备良好的可扩展性、可维护性和稳定性。
2.1.2经济可行性
在开发高校学生工作管理系统所使用的开发软件像IDEA开发工具、Tomcat8.0服务器、MySQL5.7数据库、Photoshop图片处理软件等,这些都是开源免费的,并且高校学生工作管理系统是自己设计并编码实现的,数据库是使用流行mysql进行数据的存储,开源的mysql等技术的使用,减少系统开发费用。
2.1.3操作可行性
可操作性主要是对高校学生工作管理系统设计完成后,用户的使用体验度,以及管理员可以通过系统随时管理相关的数据信息,并且对于管理员、学生用户、学生干部、教师用户这四种角色,都可以简单明了的进入到自己的系统界面,通过界面导航菜单可以简单明了地操作功能模块,方便用户信息的操作需求和管理员管理数据信息,对于系统的操作,不需要专业人员都可以直接进行功能模块的操作管理,所以在系统的可操作性是完全可以的。本系统的操作使用的也是界面窗口进行登录,所以操作人员只要会简单的电脑操作就完全可以的。
2.2 功能需求分析
2.2.1 功能性分析
在开发基于JavaWeb的高校学生工作管理系统之前,深入的需求分析和市场调研是不可或缺的步骤。这些工作将帮助我们明确系统的功能需求、性能要求、业务流程以及数据处理方式,从而确保系统界面简洁易懂、功能完善,并且符合高校的实际需求。我们需要与高校的管理人员、教师、学生以及其他相关人员进行深入交流,了解他们对学生工作管理系统的期望和需求。这些需求可能包括但不限于学生信息的录入、查询、修改、统计,学生课程管理,学生成绩管理,学生奖惩管理等多个方面。同时,我们还需要了解他们日常工作的流程和习惯,以便设计出更符合他们使用习惯的系统。
我们需要对现有的系统进行调研和分析,了解它们的优点和不足,以便我们在设计新系统时能够借鉴它们的优点并避免它们的不足。同时,我们还需要对JavaWeb技术进行深入研究,了解它的性能、安全性、稳定性等方面的特点,以便我们能够充分利用这些特点来设计出更好的系统。
最后,我们需要根据收集到的需求和调研结果,对系统进行全面的需求分析。这些分析应该包括功能需求、性能需求、安全需求、用户需求等多个方面,以确保我们设计出的系统能够满足高校的实际需求,并且具有良好的性能、安全性和用户体验。
在系统设计阶段,我们应该着重考虑如何满足用户和管理者的需求。这包括设计易于使用的界面、提供完善的功能、确保数据的安全性和完整性、提供灵活的定制和扩展选项等。同时,我们还需要考虑系统的可维护性和可扩展性,以便在未来能够对系统进行升级和改进。
综上所述,基于JavaWeb的高校学生工作管理系统的设计与实现学生信息管理需求分析是一个复杂而重要的过程。只有通过深入的需求分析和市场调研,我们才能设计出真正符合高校实际需求、功能完善、性能优良、安全可靠的系统。
2.2.2 非功能性分析
高校学生工作管理系统的非功能性需求比如系统的安全性怎么样,可靠性怎么样,性能怎么样,可拓展性怎么样等。具体可以表示在如下2-1表格中:
表2-1高校学生工作管理系统非功能需求表
安全性 | 主要指高校学生工作管理系统数据库的安装,数据库的使用和密码的设定必须合乎规范。 |
可靠性 | 可靠性是指高校学生工作管理系统能够安装用户的指示进行操作,经过测试,可靠性90%以上。 |
性能 | 性能是影响高校学生工作管理系统占据市场的必要条件,所以性能最好要佳才好。 |
可扩展性 | 比如数据库预留多个属性,比如接口的使用等确保了系统的非功能性需求。 |
易用性 | 用户只要跟着高校学生工作管理系统的页面展示内容进行操作,就可以了。 |
可维护性 | 高校学生工作管理系统开发的可维护性是非常重要的,经过测试,可维护性没有问题 |
2.3 系统用例分析
通过2.2功能的分析,得出了系统的用例图:
学生用户用例图如下所示。

图2-1 学生用户用例图
学生干部用例图如下所示。

图2-2 学生干部用例图
教师用户用例图如下所示。

图2-3 教师用例图
管理员用例图如下所示。

图2-4 管理员用例图
2.4 系统的流程分析
2.4.1登录流程

图2-5登录流程图
2.4.2添加信息流程
添加信息流程图,如下图所示:

图2-6添加信息流程图
2.4.3删除信息流程
删除信息流程图,如下图所示:

图2-7删除信息流程图
3.1 系统架构设计
高校学生工作管理系统从架构上分为三层:表现层(UI)、业务逻辑层(BLL)以及数据层(DL)。

图3-1 高校学生工作管理系统架构设计图
表现层(UI):又称UI层,主要完成高校学生工作管理系统的UI交互功能,一个良好的UI可以打打提高用户的用户体验,增强用户使用高校学生工作管理系统时的舒适度。UI的界面设计也要适应不同版本的高校学生工作管理系统以及不同尺寸的分辨率,以做到良好的兼容性。UI交互功能要求合理,用户进行交互操作时必须要得到与之相符的交互结果,这就要求表现层要与业务逻辑层进行良好的对接。
业务逻辑层(BLL):主要完成高校学生工作管理系统的数据处理功能。用户从表现层传输过来的数据经过业务逻辑层进行处理交付给数据层,系统从数据层读取的数据经过业务逻辑层进行处理交付给表现层。
数据层(DL):由于高校学生工作管理系统的数据是放在服务端的mysql数据库中,因此本属于服务层的部分可以直接整合在业务逻辑层中,所以数据层中只有数据库,其主要完成高校学生工作管理系统的数据存储和管理功能。
3.2开发流程设计
高校学生工作管理系统的开发对管理模块和系统使用的数据库进行分析,编写代开发,规划和操作是构建信息管理应用程序的必要三步曲,它决定了系统是否能够真正实现预设功能以及是否可以在成功设计后实施。在开发过程中,每个阶段必须严格按照线性顺序进行开发,并且在相应阶段生成的每个工作都可以通过技术进行验证和检查。确保一个阶段完成后是正确的,不会造成下一阶段拖拽现象,使系统完成设计功能后得到保证。
从高校学生工作管理系统的成功开发经验来看,上述方法效果最为明显,最大程度地降低了系统开发的复杂性。如图3-2所示。

图3-2开发系统流程图
3.3系统功能模块设计
通过对高校学生工作管理系统的功能需求分析以及用例分析,得出了高校学生工作管理系统的功能模块图如图3-3所示。

3.4数据库设计
数据库设计一般包括需求分析、概念模型设计、数据库表建立三大过程,其中需求分析前面章节已经阐述,概念模型设计有概念模型和逻辑结构设计两部分。
3.4.1 数据库概念结构设计
下面是整个高校学生工作管理系统中主要的数据库表总E-R实体关系图。

图3-4 系统总体ER图
3.4.2数据表
将数据库概念设计的E-R图转换为关系数据库。在关系数据库中,数据关系由数据表组成,但是表的结构表现在表的字段上。
数据库名:project67424
文档版本:1.0.0
文档描述:数据库设计文档
表access_token (登陆访问时长)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | token_id | int | 10 | 0 | N | Y | 临时访问牌ID | |
2 | token | varchar | 64 | 0 | Y | N | 临时访问牌 | |
3 | info | text | 65535 | 0 | Y | N | ||
4 | maxage | int | 10 | 0 | N | N | 2 | 最大寿命:默认2小时 |
5 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
6 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
7 | user_id | int | 10 | 0 | N | N | 0 | 用户编号: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | article_id | mediumint | 8 | 0 | N | Y | 文章id:[0,8388607] | |
2 | title | varchar | 125 | 0 | N | Y | 标题:[0,125]用于文章和html的title标签中 | |
3 | type | varchar | 64 | 0 | N | N | 0 | 文章分类:[0,1000]用来搜索指定类型的文章 |
4 | hits | int | 10 | 0 | N | N | 0 | 点击数:[0,1000000000]访问这篇文章的人次 |
5 | praise_len | int | 10 | 0 | N | N | 0 | 点赞数 |
6 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
7 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
8 | source | varchar | 255 | 0 | Y | N | 来源:[0,255]文章的出处 | |
9 | url | varchar | 255 | 0 | Y | N | 来源地址:[0,255]用于跳转到发布该文章的网站 | |
10 | tag | varchar | 255 | 0 | Y | N | 标签:[0,255]用于标注文章所属相关内容,多个标签用空格隔开 | |
11 | content | longtext | 2147483647 | 0 | Y | N | 正文:文章的主体内容 | |
12 | img | varchar | 255 | 0 | Y | N | 封面图 | |
13 | description | text | 65535 | 0 | Y | N | 文章描述 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | type_id | smallint | 5 | 0 | N | Y | 分类ID:[0,10000] | |
2 | display | smallint | 5 | 0 | N | N | 100 | 显示顺序:[0,1000]决定分类显示的先后顺序 |
3 | name | varchar | 16 | 0 | N | N | 分类名称:[2,16] | |
4 | father_id | smallint | 5 | 0 | N | N | 0 | 上级分类ID:[0,32767] |
5 | description | varchar | 255 | 0 | Y | N | 描述:[0,255]描述该分类的作用 | |
6 | icon | text | 65535 | 0 | Y | N | 分类图标: | |
7 | url | varchar | 255 | 0 | Y | N | 外链地址:[0,255]如果该分类是跳转到其他网站的情况下,就在该URL上设置 | |
8 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
9 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | auth_id | int | 10 | 0 | N | Y | 授权ID: | |
2 | user_group | varchar | 64 | 0 | Y | N | 用户组: | |
3 | mod_name | varchar | 64 | 0 | Y | N | 模块名: | |
4 | table_name | varchar | 64 | 0 | Y | N | 表名: | |
5 | page_title | varchar | 255 | 0 | Y | N | 页面标题: | |
6 | path | varchar | 255 | 0 | Y | N | 路由路径: | |
7 | position | varchar | 32 | 0 | Y | N | 位置: | |
8 | mode | varchar | 32 | 0 | N | N | _blank | 跳转方式: |
9 | add | tinyint | 3 | 0 | N | N | 1 | 是否可增加: |
10 | del | tinyint | 3 | 0 | N | N | 1 | 是否可删除: |
11 | set | tinyint | 3 | 0 | N | N | 1 | 是否可修改: |
12 | get | tinyint | 3 | 0 | N | N | 1 | 是否可查看: |
13 | field_add | text | 65535 | 0 | Y | N | 添加字段: | |
14 | field_set | text | 65535 | 0 | Y | N | 修改字段: | |
15 | field_get | text | 65535 | 0 | Y | N | 查询字段: | |
16 | table_nav_name | varchar | 500 | 0 | Y | N | 跨表导航名称: | |
17 | table_nav | varchar | 500 | 0 | Y | N | 跨表导航: | |
18 | option | text | 65535 | 0 | Y | N | 配置: | |
19 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
20 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | campus_activities_id | int | 10 | 0 | N | Y | 校园活动ID | |
2 | activity_name | varchar | 64 | 0 | Y | N | 活动名称 | |
3 | activity_type | varchar | 64 | 0 | Y | N | 活动类型 | |
4 | activity_time | datetime | 19 | 0 | Y | N | 活动时间 | |
5 | event_location | varchar | 64 | 0 | Y | N | 活动地点 | |
6 | event_cover | varchar | 255 | 0 | Y | N | 活动封面 | |
7 | event_introduction | longtext | 2147483647 | 0 | Y | N | 活动简介 | |
8 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
9 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | class_cadres_id | int | 10 | 0 | N | Y | 班级干部ID | |
2 | student_cadres | int | 10 | 0 | Y | N | 0 | 学生干部 |
3 | cadre_name | varchar | 64 | 0 | Y | N | 干部姓名 | |
4 | class_name | varchar | 64 | 0 | Y | N | 班级名称 | |
5 | cadre_pictures | varchar | 255 | 0 | Y | N | 干部图片 | |
6 | introduction_to_cadres | longtext | 2147483647 | 0 | Y | N | 干部简介 | |
7 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | collect_id | int | 10 | 0 | N | Y | 收藏ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 收藏人ID: |
3 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
4 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
5 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
6 | title | varchar | 255 | 0 | Y | N | 标题: | |
7 | img | varchar | 255 | 0 | Y | N | 封面: | |
8 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
9 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | comment_id | int | 10 | 0 | N | Y | 评论ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 评论人ID: |
3 | reply_to_id | int | 10 | 0 | N | N | 0 | 回复评论ID:空为0 |
4 | content | longtext | 2147483647 | 0 | Y | N | 内容: | |
5 | nickname | varchar | 255 | 0 | Y | N | 昵称: | |
6 | avatar | varchar | 255 | 0 | Y | N | 头像地址:[0,255] | |
7 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
9 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
10 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
11 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | event_registration_id | int | 10 | 0 | N | Y | 活动报名ID | |
2 | activity_name | varchar | 64 | 0 | Y | N | 活动名称 | |
3 | activity_type | varchar | 64 | 0 | Y | N | 活动类型 | |
4 | activity_time | datetime | 19 | 0 | Y | N | 活动时间 | |
5 | event_location | varchar | 64 | 0 | Y | N | 活动地点 | |
6 | student_users | int | 10 | 0 | Y | N | 0 | 学生用户 |
7 | student_id | varchar | 64 | 0 | Y | N | 学生学号 | |
8 | student_name | varchar | 64 | 0 | Y | N | 学生姓名 | |
9 | registration_time | datetime | 19 | 0 | Y | N | 报名时间 | |
10 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
11 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | hits_id | int | 10 | 0 | N | Y | 点赞ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 点赞人: |
3 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
4 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
5 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
6 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
7 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | message_information_id | int | 10 | 0 | N | Y | 留言信息ID | |
2 | student_cadres | int | 10 | 0 | Y | N | 0 | 学生干部 |
3 | cadre_name | varchar | 64 | 0 | Y | N | 干部姓名 | |
4 | class_name | varchar | 64 | 0 | Y | N | 班级名称 | |
5 | student_users | int | 10 | 0 | Y | N | 0 | 学生用户 |
6 | student_name | varchar | 64 | 0 | Y | N | 学生姓名 | |
7 | message_time | datetime | 19 | 0 | Y | N | 留言时间 | |
8 | message_content | text | 65535 | 0 | Y | N | 留言内容 | |
9 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
10 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | notice_id | mediumint | 8 | 0 | N | Y | 公告id: | |
2 | title | varchar | 125 | 0 | N | N | 标题: | |
3 | content | longtext | 2147483647 | 0 | Y | N | 正文: | |
4 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
5 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
表party_building_information (党建信息)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | party_building_information_id | int | 10 | 0 | N | Y | 党建信息ID | |
2 | student_users | int | 10 | 0 | Y | N | 0 | 学生用户 |
3 | student_id | varchar | 64 | 0 | Y | N | 学生学号 | |
4 | student_name | varchar | 64 | 0 | Y | N | 学生姓名 | |
5 | college_name | varchar | 64 | 0 | Y | N | 学院名称 | |
6 | professional_name | varchar | 64 | 0 | Y | N | 专业名称 | |
7 | class_name | varchar | 64 | 0 | Y | N | 班级名称 | |
8 | political_landscape | varchar | 64 | 0 | Y | N | 政治面貌 | |
9 | joining_time | varchar | 64 | 0 | Y | N | 入团时间 | |
10 | member_id | varchar | 64 | 0 | N | N | 团员编号 | |
11 | payment_of_party_dues | text | 65535 | 0 | Y | N | 党费缴纳情况 | |
12 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
13 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | penalty_notification_id | int | 10 | 0 | N | Y | 处罚通报ID | |
2 | student_users | int | 10 | 0 | Y | N | 0 | 学生用户 |
3 | student_id | varchar | 64 | 0 | Y | N | 学生学号 | |
4 | student_name | varchar | 64 | 0 | Y | N | 学生姓名 | |
5 | college_name | varchar | 64 | 0 | Y | N | 学院名称 | |
6 | professional_name | varchar | 64 | 0 | Y | N | 专业名称 | |
7 | class_name | varchar | 64 | 0 | Y | N | 班级名称 | |
8 | notification_time | datetime | 19 | 0 | Y | N | 通报时间 | |
9 | punishment_category | varchar | 64 | 0 | Y | N | 处罚类别 | |
10 | elimination_time | datetime | 19 | 0 | Y | N | 消除时间 | |
11 | punishment_remarks | text | 65535 | 0 | Y | N | 处罚备注 | |
12 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
13 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | praise_id | int | 10 | 0 | N | Y | 点赞ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 点赞人: |
3 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
4 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
5 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
6 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
7 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
8 | status | bit | 1 | 0 | N | N | 1 | 点赞状态:1为点赞,0已取消 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | reward_notification_id | int | 10 | 0 | N | Y | 奖励通报ID | |
2 | student_users | int | 10 | 0 | Y | N | 0 | 学生用户 |
3 | student_id | varchar | 64 | 0 | Y | N | 学生学号 | |
4 | student_name | varchar | 64 | 0 | Y | N | 学生姓名 | |
5 | college_name | varchar | 64 | 0 | Y | N | 学院名称 | |
6 | professional_name | varchar | 64 | 0 | Y | N | 专业名称 | |
7 | class_name | varchar | 64 | 0 | Y | N | 班级名称 | |
8 | reward_time | datetime | 19 | 0 | Y | N | 奖励时间 | |
9 | reward_categories | varchar | 64 | 0 | Y | N | 奖励类别 | |
10 | reward_content | text | 65535 | 0 | Y | N | 奖励内容 | |
11 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
12 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | slides_id | int | 10 | 0 | N | Y | 轮播图ID: | |
2 | title | varchar | 64 | 0 | Y | N | 标题: | |
3 | content | varchar | 255 | 0 | Y | N | 内容: | |
4 | url | varchar | 255 | 0 | Y | N | 链接: | |
5 | img | varchar | 255 | 0 | Y | N | 轮播图: | |
6 | hits | int | 10 | 0 | N | N | 0 | 点击量: |
7 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | social_practice_id | int | 10 | 0 | N | Y | 社会实践ID | |
2 | student_users | int | 10 | 0 | Y | N | 0 | 学生用户 |
3 | student_id | varchar | 64 | 0 | Y | N | 学生学号 | |
4 | student_name | varchar | 64 | 0 | Y | N | 学生姓名 | |
5 | college_name | varchar | 64 | 0 | Y | N | 学院名称 | |
6 | professional_name | varchar | 64 | 0 | Y | N | 专业名称 | |
7 | class_name | varchar | 64 | 0 | Y | N | 班级名称 | |
8 | practice_title | varchar | 64 | 0 | Y | N | 实践标题 | |
9 | practice_category | varchar | 64 | 0 | Y | N | 实践类别 | |
10 | upload_time | datetime | 19 | 0 | Y | N | 上传时间 | |
11 | practical_materials | varchar | 255 | 0 | Y | N | 实践材料 | |
12 | practical_score | int | 10 | 0 | Y | N | 0 | 实践分数 |
13 | examine_state | varchar | 16 | 0 | N | N | 未审核 | 审核状态 |
14 | examine_reply | varchar | 16 | 0 | Y | N | 审核回复 | |
15 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
16 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | student_attendance_id | int | 10 | 0 | N | Y | 学生考勤ID | |
2 | student_users | int | 10 | 0 | Y | N | 0 | 学生用户 |
3 | student_id | varchar | 64 | 0 | Y | N | 学生学号 | |
4 | student_name | varchar | 64 | 0 | Y | N | 学生姓名 | |
5 | college_name | varchar | 64 | 0 | Y | N | 学院名称 | |
6 | professional_name | varchar | 64 | 0 | Y | N | 专业名称 | |
7 | class_name | varchar | 64 | 0 | Y | N | 班级名称 | |
8 | attendance_date | date | 10 | 0 | Y | N | 考勤日期 | |
9 | attendance_category | varchar | 64 | 0 | Y | N | 考勤类别 | |
10 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
11 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | student_cadres_id | int | 10 | 0 | N | Y | 学生干部ID | |
2 | cadre_name | varchar | 64 | 0 | Y | N | 干部姓名 | |
3 | gender_of_cadres | varchar | 64 | 0 | Y | N | 干部性别 | |
4 | age_of_cadres | varchar | 64 | 0 | Y | N | 干部年龄 | |
5 | examine_state | varchar | 16 | 0 | N | N | 已通过 | 审核状态 |
6 | user_id | int | 10 | 0 | N | N | 0 | 用户ID |
7 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | student_employment_id | int | 10 | 0 | N | Y | 学生就业ID | |
2 | student_users | int | 10 | 0 | Y | N | 0 | 学生用户 |
3 | student_id | varchar | 64 | 0 | Y | N | 学生学号 | |
4 | student_name | varchar | 64 | 0 | Y | N | 学生姓名 | |
5 | college_name | varchar | 64 | 0 | Y | N | 学院名称 | |
6 | professional_name | varchar | 64 | 0 | Y | N | 专业名称 | |
7 | class_name | varchar | 64 | 0 | Y | N | 班级名称 | |
8 | employment_goals | varchar | 64 | 0 | Y | N | 就业目标 | |
9 | employment_areas | varchar | 64 | 0 | Y | N | 就业地区 | |
10 | salary_expectation | varchar | 64 | 0 | Y | N | 期望薪资 | |
11 | expected_position | varchar | 64 | 0 | Y | N | 期望岗位 | |
12 | employment_requirements | text | 65535 | 0 | Y | N | 就业要求 | |
13 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
14 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | student_grades_id | int | 10 | 0 | N | Y | 学生成绩ID | |
2 | student_users | int | 10 | 0 | Y | N | 0 | 学生用户 |
3 | student_id | varchar | 64 | 0 | Y | N | 学生学号 | |
4 | student_name | varchar | 64 | 0 | Y | N | 学生姓名 | |
5 | college_name | varchar | 64 | 0 | Y | N | 学院名称 | |
6 | professional_name | varchar | 64 | 0 | Y | N | 专业名称 | |
7 | class_name | varchar | 64 | 0 | Y | N | 班级名称 | |
8 | course_name | varchar | 64 | 0 | Y | N | 课程名称 | |
9 | course_semester | varchar | 64 | 0 | Y | N | 课程学期 | |
10 | course_grades | int | 10 | 0 | Y | N | 0 | 课程成绩 |
11 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
12 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | student_information_id | int | 10 | 0 | N | Y | 学生信息ID | |
2 | student_users | int | 10 | 0 | Y | N | 0 | 学生用户 |
3 | student_id | varchar | 64 | 0 | Y | N | 学生学号 | |
4 | student_name | varchar | 64 | 0 | Y | N | 学生姓名 | |
5 | student_gender | varchar | 64 | 0 | Y | N | 学生性别 | |
6 | student_age | varchar | 64 | 0 | Y | N | 学生年龄 | |
7 | college_name | varchar | 64 | 0 | Y | N | 学院名称 | |
8 | professional_name | varchar | 64 | 0 | Y | N | 专业名称 | |
9 | class_name | varchar | 64 | 0 | Y | N | 班级名称 | |
10 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
11 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | student_users_id | int | 10 | 0 | N | Y | 学生用户ID | |
2 | student_id | varchar | 64 | 0 | N | N | 学生学号 | |
3 | student_name | varchar | 64 | 0 | Y | N | 学生姓名 | |
4 | student_gender | varchar | 64 | 0 | Y | N | 学生性别 | |
5 | student_age | varchar | 64 | 0 | Y | N | 学生年龄 | |
6 | college_name | varchar | 64 | 0 | Y | N | 学院名称 | |
7 | professional_name | varchar | 64 | 0 | Y | N | 专业名称 | |
8 | class_name | varchar | 64 | 0 | Y | N | 班级名称 | |
9 | examine_state | varchar | 16 | 0 | N | N | 已通过 | 审核状态 |
10 | user_id | int | 10 | 0 | N | N | 0 | 用户ID |
11 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
12 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | teacher_users_id | int | 10 | 0 | N | Y | 教师用户ID | |
2 | teachers_name | varchar | 64 | 0 | Y | N | 教师姓名 | |
3 | teacher_age | varchar | 64 | 0 | Y | N | 教师年龄 | |
4 | teacher_gender | varchar | 64 | 0 | Y | N | 教师性别 | |
5 | examine_state | varchar | 16 | 0 | N | N | 已通过 | 审核状态 |
6 | user_id | int | 10 | 0 | N | N | 0 | 用户ID |
7 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | upload_id | int | 10 | 0 | N | Y | 上传ID | |
2 | name | varchar | 64 | 0 | Y | N | 文件名 | |
3 | path | varchar | 255 | 0 | Y | N | 访问路径 | |
4 | file | varchar | 255 | 0 | Y | N | 文件路径 | |
5 | display | varchar | 255 | 0 | Y | N | 显示顺序 | |
6 | father_id | int | 10 | 0 | Y | N | 0 | 父级ID |
7 | dir | varchar | 255 | 0 | Y | N | 文件夹 | |
8 | type | varchar | 32 | 0 | Y | N | 文件类型 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | user_id | mediumint | 8 | 0 | N | Y | 用户ID:[0,8388607]用户获取其他与用户相关的数据 | |
2 | state | smallint | 5 | 0 | N | N | 1 | 账户状态:[0,10](1可用|2异常|3已冻结|4已注销) |
3 | user_group | varchar | 32 | 0 | Y | N | 所在用户组:[0,32767]决定用户身份和权限 | |
4 | login_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 上次登录时间: |
5 | phone | varchar | 11 | 0 | Y | N | 手机号码:[0,11]用户的手机号码,用于找回密码时或登录时 | |
6 | phone_state | smallint | 5 | 0 | N | N | 0 | 手机认证:[0,1](0未认证|1审核中|2已认证) |
7 | username | varchar | 16 | 0 | N | N | 用户名:[0,16]用户登录时所用的账户名称 | |
8 | nickname | varchar | 16 | 0 | Y | N | 昵称:[0,16] | |
9 | password | varchar | 64 | 0 | N | N | 密码:[0,32]用户登录所需的密码,由6-16位数字或英文组成 | |
10 | | varchar | 64 | 0 | Y | N | 邮箱:[0,64]用户的邮箱,用于找回密码时或登录时 | |
11 | email_state | smallint | 5 | 0 | N | N | 0 | 邮箱认证:[0,1](0未认证|1审核中|2已认证) |
12 | avatar | varchar | 255 | 0 | Y | N | 头像地址:[0,255] | |
13 | open_id | varchar | 255 | 0 | Y | N | 针对获取用户信息字段 | |
14 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
15 | vip_level | varchar | 255 | 0 | Y | N | 会员等级 | |
16 | vip_discount | double | 11 | 2 | Y | N | 0.00 | 会员折扣 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | group_id | mediumint | 8 | 0 | N | Y | 用户组ID:[0,8388607] | |
2 | display | smallint | 5 | 0 | N | N | 100 | 显示顺序:[0,1000] |
3 | name | varchar | 16 | 0 | N | N | 名称:[0,16] | |
4 | description | varchar | 255 | 0 | Y | N | 描述:[0,255]描述该用户组的特点或权限范围 | |
5 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
6 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
7 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
8 | register | smallint | 5 | 0 | Y | N | 0 | 注册位置: |
9 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
10 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
4.1用户注册模块
高校学生工作管理系统的用户可以进行注册登录,当用户右上角“注册”按钮的时候,当填写上自己的账号+密码+确认密码+昵称+邮箱+手机号等后再点击“注册”按钮后将会先验证输入的有没有空数据,再次验证密码和确认密码是否是一样的,最后验证输入的账户名和数据库表中已经注册的账户名是否重复,只有都验证没问题后即可用户注册成功。用户注册界面展示如下图所示。

图4.1 注册界面图
4.2登录模块
管理员、用户在登录界面输入账号+密码,完成验证,点击“登录”按钮,系统在用户数据库表中会对管理员、用户的账号进行匹配,账号+密码正确的话,就会登录到系统中各个用户的主管理界面,否则提示对应的信息,返回到登录的界面,其主界面展示如下图所示。

图4.2 登录界面图
登录关键代码如下所示。
/**
* 登录
* @param data
* @param httpServletRequest
* @return
*/
@PostMapping("login")
public Map<String, Object> login(@RequestBody Map<String, String> data, HttpServletRequest httpServletRequest) {
log.info("[执行登录接口]");
String username = data.get("username");
String email = data.get("email");
String phone = data.get("phone");
String password = data.get("password");
List resultList = null;
QueryWrapper wrapper = new QueryWrapper<User>();
Map<String, String> map = new HashMap<>();
if(username != null && "".equals(username) == false){
map.put("username", username);
resultList = service.selectBaseList(service.select(map, new HashMap<>()));
}
else if(email != null && "".equals(email) == false){
map.put("email", email);
resultList = service.selectBaseList(service.select(map, new HashMap<>()));
}
else if(phone != null && "".equals(phone) == false){
map.put("phone", phone);
resultList = service.selectBaseList(service.select(map, new HashMap<>()));
}else{
return error(30000, "账号或密码不能为空");
}
if (resultList == null || password == null) {
return error(30000, "账号或密码不能为空");
}
//判断是否有这个用户
if (resultList.size()<=0){
return error(30000,"用户不存在");
}
User byUsername = (User) resultList.get(0);
Map<String, String> groupMap = new HashMap<>();
groupMap.put("name",byUsername.getUserGroup());
List groupList = userGroupService.selectBaseList(userGroupService.select(groupMap, new HashMap<>()));
if (groupList.size()<1){
return error(30000,"用户组不存在");
}
UserGroup userGroup = (UserGroup) groupList.get(0);
//查询用户审核状态
if (!StringUtils.isEmpty(userGroup.getSourceTable())){
String res = service.selectExamineState(userGroup.getSourceTable(),byUsername.getUserId());
if (res==null){
return error(30000,"用户不存在");
}
if (!res.equals("已通过")){
return error(30000,"该用户审核未通过");
}
}
//查询用户状态
if (byUsername.getState()!=1){
return error(30000,"用户非可用状态,不能登录");
}
String md5password = service.encryption(password);
if (byUsername.getPassword().equals(md5password)) {
// 存储Token到数据库
AccessToken accessToken = new AccessToken();
accessToken.setToken(UUID.randomUUID().toString().replaceAll("-", ""));
accessToken.setUser_id(byUsername.getUserId());
tokenService.save(accessToken);
// 返回用户信息
JSONObject user = JSONObject.parseObject(JSONObject.toJSONString(byUsername));
user.put("token", accessToken.getToken());
JSONObject ret = new JSONObject();
ret.put("obj",user);
return success(ret);
} else {
return error(30000, "账号或密码不正确");
}
}
public String select(Map<String,String> query,Map<String,String> config){
StringBuffer sql = new StringBuffer("select ");
sql.append(config.get(FindConfig.FIELD) == null || "".equals(config.get(FindConfig.FIELD)) ? "*" : config.get(FindConfig.FIELD)).append(" ");
sql.append("from ").append("`").append(table).append("`").append(toWhereSql(query, "0".equals(config.get(FindConfig.LIKE))));
if (config.get(FindConfig.GROUP_BY) != null && !"".equals(config.get(FindConfig.GROUP_BY))){
sql.append("group by ").append(config.get(FindConfig.GROUP_BY)).append(" ");
}
if (config.get(FindConfig.ORDER_BY) != null && !"".equals(config.get(FindConfig.ORDER_BY))){
sql.append("order by ").append(config.get(FindConfig.ORDER_BY)).append(" ");
}
if (config.get(FindConfig.PAGE) != null && !"".equals(config.get(FindConfig.PAGE))){
int page = config.get(FindConfig.PAGE) != null && !"".equals(config.get(FindConfig.PAGE)) ? Integer.parseInt(config.get(FindConfig.PAGE)) : 1;
int limit = config.get(FindConfig.SIZE) != null && !"".equals(config.get(FindConfig.SIZE)) ? Integer.parseInt(config.get(FindConfig.SIZE)) : 10;
sql.append(" limit ").append( (page-1)*limit ).append(" , ").append(limit);
}
log.info("[{}] - 查询操作,sql: {}",table,sql);
return sql.toString();
}
public List selectBaseList(String select) {
List<Map<String,Object>> mapList = baseMapper.selectBaseList(select);
List<E> list = new ArrayList<>();
for (Map<String,Object> map:mapList) {
list.add(JSON.parseObject(JSON.toJSONString(map),eClass));
}
return list;
}
4.3密码修改模块
用户使用该系统注册完成后,用户对登录密码有修改需求时,系统也可以提供用户修改密码权限。系统中所有的操作者能够变更自己的密码信息,执行该功能首先必须要登入系统,然后选择密码变更选项以后在给定的文本框中填写初始密码和新密码来完成修改密码的操作。在填写的时候,假如两次密码填写存在差异,那么此次密码变更操作失败。密码修改界面如下图所示。

图4.3 密码修改界面图
4.4校园新闻模块
学生用户、学生干部点击前台“校园新闻”这个菜单,可以查看到系统中所有添加的校园新闻信息,支持通过筛选、排序、局部搜索等方式进行查询,如果想要了解某一的校园新闻的详细信息,点击即可进入详情查看界面,详情页面可以进行查看、收藏、评论等操作。界面如下图所示。

图4.4 校园新闻界面图
4.5学生就业模块
学生用户点击个人中心“学生就业”这个菜单,输入学生用户、学生姓名、专业名称、就业目标、期望薪资、就业要求等信息提交。界面如下图所示。

图4.5学生就业界面图
4.6班级干部模块
班级干部点击个人中心的“班级干部”这个菜单,通过输入干部名称、班级名称进行查询和重置的操作。可以查看班级干部的详情。界面如下图所示。

图4.6班级干部界面图
4.7社会实践模块
教师用户点击后台的“社会实践”这个菜单,可以查看社会实践详情,通过输入学生姓名、班级名称、审核状态进行查询的操作、还可以对实践材料进行下载并进行审核回复。界面如下图所示。

图4.7社会实践界面图

图4.8社会实践审核回复界面图
4.8奖励通报模块
教师用户点击后台的“奖励通报”这个菜单,教师用户记录学生获得的奖励情况,并向相关部门通报。界面如下图所示。

图4.9 奖励通报界面图
奖励通报的关键代码如下:
@RequestMapping(value = {"/sum_group", "/sum"})
public Map<String, Object> sum(HttpServletRequest request) {
Query count = service.sum(service.readQuery(request), service.readConfig(request));
return success(count.getResultList());
}
4.9党建信息管理模块
管理人员在“党建信息”这一菜单,管理员可以管理学生的党建信息,包括党员信息、党组织活动等。界面如下图所示。

图4.10党建信息管理界面图
4.10校园活动管理模块
管理员在“校园活动管理”这一菜单,管理员需要管理校园内的各种活动,包括发布活动信息、安排场地、活动时间等。界面如下图所示。

图4.11校园活动管理界面图
4.11系统用户管理界面
管理人员在“系统用户管理”这一菜单是中可以对用户和管理员进行管控。界面如下图所示。

图4.12系统用户管理界面图
系统用户管理关键代码如下所示。
public List selectBaseList(String select) {
List<Map<String,Object>> mapList = baseMapper.selectBaseList(select);
List<E> list = new ArrayList<>();
for (Map<String,Object> map:mapList) {
list.add(JSON.parseObject(JSON.toJSONString(map),eClass));
}
return list;
}
4.12系统管理界面
管理员可以对系统前台展示的轮播图进行增删改查,方便用户进行查看。界面如下图所示。

图4.13系统管理界面图
4.13公共消息模块
管理员可以对系统前台展示的公告信息进行增删改查,方便用户进行查看。界面如下图所示。

图4-14公告消息界面图
5.1系统测试的目的
程序设计不能保证没有错误,这是一个开发过程,在错误或错误的过程中都是难以避免的。虽然这是不可避免的,但我们不能使这些错误始终存在于系统中,错误可能会造成无法估量的后果,如系统崩溃,安全信息泄露,系统无法正常启动等,为了避免这些问题,我们需要测试程序,再测试过程中发现问题,并纠正它们,从而使系统更长时间稳定成熟。本章的作用是发现这些问题,并对其进行修改,虽然耗时费力,但对于长期使用而言是非常重要和必要系统的开发。
软件在设计后必须进行测试,调试过程中使用的方法是软件测试方法。在开发新软件时,系统测试是检查软件是否合格的关键步骤,以及是否符合设计目标的参考。测试主要是查看软件中数据的准确性,正确的操作与否,以及操作的结果,还有哪些方面需要改进。
高校学生工作管理系统的实现,对于系统中功能模块的实现及操作都必须通过测试进行来评判系统是否可以准确的实现。在高校学生工作管理系统正式上传使用之前必须做的一步就是系统测试,对于测试发现的错误及时修改处理,保证系统准确无误的供给用户使用。
5.2系统测试方法
在对高校学生工作管理系统进行测试的时候在找到问题的情况下必须在第一时间找到解决问题的办法,不要存在侥幸的心理,这样才能让高校学生工作管理系统开发的质量可以过关,并且开发的周期会大大缩短,还有就是在测试时,不要出现重复性的错误,遇到一个错误问题,要将整个高校学生工作管理系统开发所牵扯的该问题都必须一一解决,提高高校学生工作管理系统的安全性、稳定性。
白盒测试与黑盒测试是测试中比较常用的两种方法。
①结构测试俗称白盒测试:这种测试是在对程序的处理过程与结构都有详尽谅解的前提下,顺从程序内部的逻辑而完成的系统测试,以确定系统中所有的通路都能够遵照设计要求正常工作,不出现任何偏差。
②功能测试又成黑盒测试:主要是针对程序功能能够按照设计正常实现的一种检测,在程序接口处进行,检测程序手法数据是否正常,与外部信息的交换是否完整。
5.3功能测试
用户登录测试:
模块名称 | 测试用例 | 预期结果 | 实际结果 | 是否通过 |
登录模块 | 用户名:admin 密码:123 | 弹出错误提示,提示密码错误 | 弹出错误提示,提示密码错误 | 通过 |
登录模块 | 用户名:123 密码:admin | 弹出错误提示,提示用户名错误 | 弹出错误提示,提示用户名错误 | 通过 |
登录模块 | 用户名:admin 密码:admin | 管理员登录成功 | 管理员登录成功 | 通过 |
删除分类测试:
模块名称 | 测试用例 | 预期结果 | 实际结果 | 是否通过 |
删除分类模块 | 分类名:最新通知 | 删除成功、页面自动跳转 | 删除成功、页面自动跳转 | 通过 |
修改密码测试:
模块名称 | 测试用例 | 预期结果 | 实际结果 | 是否通过 |
修改密码模块 | 原密码:666 新密码:123 确认密码:123 | 弹出错误提示,提示原密码错误 | 弹出错误提示,提示原密码错误 | 通过 |
修改密码模块 | 原密码:admin 新密码:123 确认密码:333 | 弹出错误提示,提示确认密码不一致 | 弹出错误提示,提示确认密码不一致 | 通过 |
修改密码模块 | 原密码:admin 新密码:123 确认密码:123 | 密码修改成功 | 密码修改成功 | 通过 |
通过对功能的测试,高校学生工作管理系统的基本功能都是可行的,不管是系统里面的功能,还是界面的设计都是可值得推广宣传的。
至此,高校学生工作管理系统的设计与实现已经结束,在开发前做了许多的准备,在本系统的设计和开发过程中阅览和学习了许多文献资料,从中我也收获了很多宝贵的方法和设计思路,对系统的开发也起到了很重要的作用,系统的开发技术选用的都是自己比较熟悉的,比如SSM、JAVA语言、MYSQL,这些技术都是在以前的学习中学到了,其中许多的设计思路和方法都是在以前不断地学习中摸索出来的经验,其实对于我们来说工作量还是比较大的,但是正是由于之前的积累与准备,才能顺利的完成这个项目,由此看来,积累经验跟做好准备是十分重要的事情。
当然在该系统的设计与实现的过程中也离不开老师以及同学们的帮助,正是因为他们的指导与帮助,我才能够成功的在预期内完成了这个系统。同时在这个过程当中我也收获了很多东西,此系统也有需要改进的地方,但是由于专业知识的浅薄,并不能做到十分完美,希望以后有机会可以让其真正的投入到使用之中。
[1]Wahyudi ,Tiffany K V ,Mulyadi Y , et al.Morpho-dynamic Induced Rip Currents in Klayar Beach, Pacitan, East Java, Indonesia[J].IOP Conference Series: Earth and Environmental Science,2024,1298(1):
[2]Wardhani K M ,Sulistiyorini A D .Assessment of the Quality of Raw Water for Salt Production in Pangarengan, Sampang, East Java[J].IOP Conference Series: Earth and Environmental Science,2024,1298(1):
[3]Sagala M P ,Bhomia K R ,Murdiyarso D .Assessment of coastal vulnerability to support mangrove restoration in the northern coast of Java, Indonesia[J].Regional Studies in Marine Science,2024,70103383-.
[4]Kartini A G ,Gumilar I ,Abidin Z H , et al.3D model of Pawon Cave: The first prehistoric dwelling discovery in West Java, Indonesia[J].Digital Applications in Archaeology and Cultural Heritage,2024,32e00311-.
[5]白茹鑫.基于SpringBoot+SSM框架的企业安全培训管理系统设计与实现[J].现代信息科技,2024,8(01):44-49.DOI:10.19850/j.cnki.2096-4706.2024.01.009.
[6]Abdillah Z Y ,Sidik P R ,Putra M Z , et al.Geochemistry of Cold Springs in Geothermal Exploration Stage – Case Study of Candi Umbul Telomoyo, Central Java[J].IOP Conference Series: Earth and Environmental Science,2024,1293(1):
[7]单厚信,刘舒心,程文远等.基于SSM架构的图书资料管理系统设计与实现[J].现代信息科技,2023,7(23):46-51.DOI:10.19850/j.cnki.2096-4706.2023.23.010.
[8]许冯敏.关于高校大学生危机管理事件处理的探究[J].科学咨询(科技·管理),2023,(08):38-40.
[9]杨洋.Apache学生工作管理系统的设计及应用[J].电子世界,2021,(24):186-187.DOI:10.19353/j.cnki.dzsj.2021.24.081.
[10]魏付芳.基于S2SH高校学生工作管理系统的设计与实现[J].电子技术与软件工程,2021,(24):138-139.
[11]范劲超.基于微服务架构的学生工作管理系统[J].电脑知识与技术,2021,17(21):71-72+83.DOI:10.14004/j.cnki.ckt.2021.2082.
[12]顾国梅.新媒体背景下高校学生工作信息化管理——以常熟理工学院为例[J].文教资料,2020,(23):119-120+92.
[13]潘旭.高校学生信息管理系统的设计与实现[J].产业与科技论坛,2020,19(13):56-57.
[14]郑晓健,李彤.对等网络模式下社区管理系统设计[J].软件,2020,41(04):53-56.
[15]沈涛,胡旭辉.基于JSP平台的高校学生工作管理系统的实现[J].信息与电脑(理论版),2020,32(05):105-107.
[16]荀雪莲,蔡明戈,姚志强.基于图书借阅信息的学生工作管理系统[J].北华航天工业学院学报,2020,30(01):18-20.
[17]唐澄澄,祝腾.省级高校智慧校园学生管理系统设计分析——以江苏省为例[J].教育现代化,2019,6(A2):186-187.DOI:10.16541/j.cnki.2095-8420.2019.102.091.
[18]王东新.基于Apache学生工作管理系统的设计及应用[J].自动化技术与应用,2019,38(10):177-179.
[19]秦朝明.学生工作管理信息系统在高校学生管理中的应用[J].学理论,2019,(08):136-137.
[20]边璐.高校学生管理系统建设[J].科技传播,2019,11(10):157-158.DOI:10.16607/j.cnki.1674-6708.2019.10.075.
致 谢
这次毕业设计能够完成,最重要的就是来自指导老师的帮助,老师不厌其烦的对我的论文及毕业设计提出非常有建设性的建议,我的毕设能够完成离不开老师的帮助。我对老师由衷的表示感谢,
其次要感谢大学四年里学院里所有的任课老师的教导,老师们在我整个大学四年里给予了我丰富的知识,让我能够在大学中不虚度光阴,踏踏实实的学习,没有这些老师不辞辛劳的教诲,我无法完成这四年的学业。
由于自己的水平有限,毕设仍然存在着很大的缺陷,各位老师若提出意见,我会努力改正。
免费领取源码,请点赞关注私信博主