【JAVA GUI+MYSQL]社团信息管理系统

  本社团信息管理系统主要实现登录注册、管理员信息管理、社团用户信息管理、用户申请信息管理功能模块。

目录

1.系统主要功能介绍

2. 数据库概念模型设计

3.具体功能模块的实现  

3.1模型类

3.1.1Student.java

3.1.2User .java

3.1.3Club.java

3.2页面类

3.2.1LoginInterface.java

3.2.2UsersRegisterInterface.java 

3.2.3UsersOpenInterface.java     

3.2.4UserClubApplication.java   

3.2.5AdminOpenInterface.java    

3.2.6AdminRegisterInterface.java

3.2.7AddClubInforation.java

3.2.8AddStudentInforation.java   

3.2.9ChangeClubInforation.java  

3.2.10ChangeStudentInformation.java  

3.3 监听界面功能类

4. 系统测试用例

4.1用户登录界面

4.2普通用户注册界面

4.3普通用户打开界面

4.4用户申请加入社团界面

4.5管理员打开界面

4.6管理员账号注册界面

4.7增加社团信息

4.8增加学生信息

4.9修改社团信息界面

4.10修改学生信息界面

5 总结



1.系统主要功能介绍

  该系统主要实现登录注册、管理员信息管理、社团用户信息管理、用户申请信息管理功能模块。具体功能如下所示:

  1. 登录注册功能:根据用户输入的用户名和密码来确定用户所属级别。
  2. 社团信息管理:管理员可以对全部社团信息进行搜索、编辑、删除的操作。
  3. 社团用户信息管理:管理员可以对全部社团用户信息进行搜索、编辑、删除,查看用户信息列表。
  4. 用户申请信息管理:可以对已有的用户信息进行通过审核和拒绝的操作,也可以查看首页的用户申请列表。

图1-1系统结构图


2. 数据库概念模型设计

以下是数据库相关表之间的联系:

图2-1实体关系图


3.具体功能模块的实现  

3.1模型类

3.1.1Student.java

  对学生类的各个属性:成员姓名、成员性别、学号、出生日期、电话、所在社团、入团日期进行描述,并且实现他们的set函数和get函数。

3.1.2User .java

  继承学生类,并添加密码属性,完成密码的set和get函数。

3.1.3Club.java

  对社团属性:社团ID、社团名称、学院、成立日期、成员数量、负责人进行描述,并且实现他们的set函数和get函数。

3.2页面类

3.2.1LoginInterface.java

  用户登录界面,实现账号框、密码框、登陆、注册按钮以及背景图片。

3.2.2UsersRegisterInterface.java 

  普通用户注册界面,实现用户id框、密码框、确认按钮框以及确认按钮以及背景图片。

3.2.3UsersOpenInterface.java     

  普通用户打开界面,实现社团ID查询按钮,社团名称查询按钮,院系查询按钮,申请加入社团按钮,申请情况查询按钮,已经所有社团查询按钮,以及对应的跳转功能。     

3.2.4UserClubApplication.java   

  用户申请加入社团界面,实现社团ID文本框、社团名称文本框、学生ID文本框、学生姓名文本框、性别下拉框、出生日期文本框、联系方式文本框以及确认按钮以及背景图片。

3.2.5AdminOpenInterface.java    

  管理员打开界面,实现社团ID查询按钮,学生ID查询按钮,院系查询按钮,社团申请表处理按钮,创建管理员账号按钮,全部社团查询按钮,增加、删除、修改、申请通过、拒绝申请按钮以及对应的跳转功能,可以进行管理员操作

3.2.6AdminRegisterInterface.java

  管理员账号注册界面,实现用户id框、密码框、确认按钮框以及确认按钮以及背景图片。

3.2.7AddClubInforation.java

  增加社团信息界面,实现社团ID文本框、社团名称文本框、所属院系下拉框、创建日期文本框,负责人文本框确认按钮以及背景。

3.2.8AddStudentInforation.java   

  增加学生信息界面,学生ID文本框、学生姓名文本框、性别下拉框、出生日期文本框、联系方式文本框以及确认按钮以及背景图片。

3.2.9ChangeClubInforation.java  

  修改社团信息界面,实现社团ID文本框、社团名称文本框、所属院系下拉框、创建日期文本框,负责人文本框确认按钮以及背景。

3.2.10ChangeStudentInformation.java  

  修改学生信息界面,学生ID文本框、学生姓名文本框、性别下拉框、出生日期文本框、联系方式文本框以及确认按钮以及背景图片。


3.3 监听界面功能类

  1. UIListener 监听登陆界面用户按钮操作
  2. ListenUsersRegister  监听普通用户注册界面按钮操作
  3. ListenerUserClubApplication 监听用户申请加入社团界面按钮操作
  4. ListenAdminRegisterInterface   监听管理员用户注册界面按钮操作

4. 系统测试用例

4.1用户登录界面

  • 点击注册按钮,测试是否能成功跳转到注册界面

    

  • 输入不对应的账号和密码,测试是否会判错。

     

4.2普通用户注册界面

  • 输入新账号和密码以及不相同的确认密码,测试是否可以判断有无两次密码判断。
  • 输入新账号以及纯数字的密码,测试是否能出现密码低安全性问题弹窗。

  • 输入新账号,和符合规则的密码和确认密码,测试能是否成功注册。

4.3普通用户打开界面

  • 点击全部社团查询,测试是否输出全部社团信息

  • 根据院系查询,下拉框选择电智学院,测试是否输出电智学院社团。

  • 输入社团编号A1,测试是否输出A1社团成员信息

  • 输入不存在的社团编号E2,测试是否出现查找不到该社团信息弹窗。

  • 点击申请加入社团按钮,测试是否能正常跳转到成员社团申请表。

4.4用户申请加入社团界面

  • 输入A1 篮球社团 金泰 男 1995-12-30 19923469373 测试能否提交申请

  • 输入A1 足球社团 金泰 男 1995-12-30 19923469373 测试出现社团名和社团序号不对应弹窗。

4.5管理员打开界面

  • 点击全部社团查询,选中任意一行,点击删除按钮,测试是否删除社团信息成功。

  • 点击全部社团查询,选中任意一行,点击修改按钮,测试是否跳转修改社团信息界面。

  • 输入社团编号A1,点击C查询,选中任意一行,点击删除按钮,测试删除成员信息。

  • 输入社团编号A1,点击C查询,选中任意一行,点击增加按钮,测试是否能跳转到增加社团信息界面,增加信息是否成功。

  • 根据院系查询,下拉框选择电智学院,选中任意一行,点击添加按钮,测试是否能跳转到增加社团信息界面,添加信息是否成功。

  • 点击处理加入社团申请按钮,中任意一行,点击申请成功按钮,测试是否能通过申请。

  • 点击处理加入社团申请按钮,中任意一行,点击申请成功按钮,测试是否能拒绝申请。

4.6管理员账号注册界面

  • 输入新账号和密码以及不相同的确认密码,测试是否可以判断有无两次密码判断。

  • 输入新账号以及纯数字的密码,测试是否能出现密码低安全性问题弹窗。

  • 输入新账号,和符合规则的密码和确认密码,测试能是否成功注册。

4.7增加社团信息

  • 输入 A7 书法社团 电智学院 2023-12-31 点击确认,测试是否能创建成功。

  • 输入已存在的社团信息,测试是否出现不能创建重复社团弹窗。

4.8增加学生信息

  • 输入学号 姓名 性别 生日 联系方式,测试是否能够添加成功。

4.9修改社团信息界面

  • 修改社团名称 创建日期 负责人 测试是否能修改成功。

4.10修改学生信息界面

  • 修改学生姓名 年龄 性别 生日 联系方式,测试是否修改成功。


5 总结

  和队友的课设时光辛苦啦~浅浅的记录一下,博文内容仅为课设报告部分内容,需要完整报告和代码的小伙伴可以私我哦~

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

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

相关文章

基于ssm的孩童收养信息管理系统论文

摘 要 现代经济快节奏发展以及不断完善升级的信息化技术,让传统数据信息的管理升级为软件存储,归纳,集中处理数据信息的管理方式。本孩童收养信息管理就是在这样的大环境下诞生,其可以帮助管理者在短时间内处理完毕庞大的数据信息…

react-native下载图片到本地相册

需求 点击右上角下载icon,可以将当前图片下载并保存到本地相册。 下载的图片: 流程 下载图片的本质其实是, 固定需要下载的页面内容和样式 》将其放在当前页面不可见区域 》点击下载按钮 》穿一个ref给native,会自动拉起手机系…

SpringBoot怎么写一个自定义的starter,Gradle依赖引入starter的Jar包

1.新建一个Spring的项目myasset-spring-boot-starter 项目结构如下: 注意:不需要Application启动类 和 application.yml/application.properties文件 2. resources下添加spring.factories文件 # Auto Configure org.springframework.boot.autoconfigure.EnableAutoConfigu…

Zookeeper的基础介绍和安装教程

1、 Zookeeper入门 1.1 概述 Zookeeper是一个开源的分布式的,为分布式应用提供协调服务的Apache项目。 1.2 特点 1.3 数据结构 1.4 应用场景 提供的服务包括:统一命名服务、统一配置管理、统一集群管理、服务器节点动态上下线、软负载均衡等。 统一…

ros gazebo机械臂仿真,手动控制与MoveIt自动控制

本文总结归纳古月居胡春旭ros机械臂教程,给出了一些error的解决方法,补充了通过python运行moveit。十分建议去看github huchunxu源代码的repository。 创建机械臂的xacro模型 首先创建一个工作空间,在工作空间中创建arm_description功能包。…

GPT如何完成AI绘图?

详情点击链接:GPT如何完成AI绘图? 一OpenAI 1.最新大模型GPT-4 Turbo 2.最新发布的高级数据分析,AI画图,图像识别,文档API 3.GPT Store 4.从0到1创建自己的GPT应用 5. 模型Gemini以及大模型Claude2二定制自己的GP…

react antd 计算公式 (+-*/)运算,回显

计算器的源码计算器触发事件源码 import {DictValueEnumObj } from @/components/DictTag; import {getDeptTree, getFormulaListAll, getListAll } from @/services/Energy/Metering;import {getListAllInfo, getDepartmentName } from @/services/Energy/Calculation; import…

蓝牙网关在物联网领域三大应用

蓝牙网关在物联网的应用主要包括物联网室内定位、物联网数据采集、物联网连接控制三大应用领域,以下对三大应用领域做详细解释。 一、物联网蓝牙室内定位 蓝牙网关在室内定位的应用包括人员定位和资产设备定位两大方向。 1、人员定位 蓝牙网关安装于室内的特定地…

护眼灯哪个品牌最好?2024年十大护眼灯品牌排行榜

由于科技水平的提高和电子产品的普及,儿童青少年的近视率正逐年攀升,出现低龄化现象,面对眼健康问题的严峻形势,我们应该还有爱眼意识、加强眼健康知识普及!现在呢,护眼台灯被越来越多的人发现了&#xff0…

接口芯片选型分析 四通道差分驱动可满足ANSI TIA/EIA-422-B 和ITU V.11 的要求 低功耗,高速率,高ESD

四通道差分驱动可满足ANSI TIA/EIA-422-B 和ITU V.11 的要求 低功耗,高速率,高ESD。 其中GC26L31S可替代AM26LS31/TI,GC26L32S替代AM26LS32/TI,GC26E31S替代TI的AM26LV31E

如何快速制作网址的静态码?网址二维码在线制作的简单技巧

现在很多人会将网址转换成静态二维码来使用,一个原因是扫码更符合现在人们的生活习惯,二来是采用二维码图片来做传播能够有效的节省制作者的成本,而且容易更快的完成网址内容的传播,所以将网址生成二维码的方法现在应用非常的广泛…

U盘无法安全弹出怎么办?

当电脑弹出“弹出USB大容量存储设备时出问题”提示时,只能抱着侥幸的心理直接拔出,如果运气好,可能没有什么事,如果运气不好,你的U盘可能就会报废。那么,为什么U盘无法弹出?遇到U盘无法安全弹出…

ORA-600 adg无法查询故障

再续前缘 ORA-600[12406]故障解决-CSDN博客 当你点背的时候,看似一个简单的case,总是会迎来反转 上次改完参数没两天,又出现了报错不同,但是现象相似的情况 这次是 ORA-600 [kksgaGetNoAlloc_Int0] 这次出现故障的范围更大&a…

windows@管理员用户账户

文章目录 windows中的管理员用户账户将某个用户提升为管理员🎈直接创建一个管理员账户😊使用lusrmgr.msc程序创建先新建一个用户FAQ 在管理员组中添加新用户为管理员🎈方式1:手动输入方式2:在已有的用户列表中查找并选中修改/禁用pin码(普通情…

Vue中Vuex的环境搭建和原理分析及使用

Vuex的环境搭建 Vuex是Vue实现集中式数据管理的Vue的一个插件,集中式可以理解为一个老师给多个学生讲课。 Vue2.0版本的安装: npm i vuex3 使用Vuex需要在store中的index.js引入Vuex和main.js中引入store,目的是让vm和vc都能看到$store。实现多个组件…

降噪自编码器(Denoising Autoencoder)

降噪自编码器(Denoising Autoencoder)是一种用于无监督学习的神经网络模型。与普通的自编码器不同,降噪自编码器的目标是通过在输入数据中引入噪声,然后尝试从具有噪声的输入中重建原始无噪声数据。 以下是降噪自编码器的主要特点…

基于SSM的停车管理系统设计与实现

末尾获取源码 开发语言:Java Java开发工具:JDK1.8 后端框架:SSM 前端:采用JSP技术开发 数据库:MySQL5.7和Navicat管理工具结合 服务器:Tomcat8.5 开发软件:IDEA / Eclipse 是否Maven项目&#x…

Pytest自动化测试框架

1、pytest简介 pytest是Python的一种单元测试框架,与python自带的unittest测试框架类似,但是比unittest框架使用起来更简洁,效率更高。 执行测试过程中可以将某些测试跳过,或者对某些预期失败的case标记成失败能够支持简单的单元…

关于vite的glob坑

我先展示一段代码: /*** function 根据pages路径动态生成路由* param {Array} 基础路由*/ export default function (routes) {const modules import.meta.glob("../pages/**/page.js", { eager: true, import: "default" });const comps im…

如何让ArcGIS Pro启动显示空白页面

刚接触ArcGIS Pro的你是否会觉得在操作上有那么一些不习惯,从一开始软件启动就发现和ArcGIS差距很大:丰富的欢迎页面,加上默认加载的地图让你眼花缭乱,这里教你如何去掉这些繁杂的内容,还你一个干净的启动页面。 跳过…