Java课设–学生成绩管理系统一

Java课设–学生成绩管理系统一写在前面这个项目是Java课程的课设,一共花了5天的时间去完成它,在这期间感谢一些博主的帮助,让我了解到了一些新的技术知识,所以打算写这一系列博客来介绍一整个课设项目,也为了帮助之后的人,如有错误,请联系我。为了更好的让读者了解到整个项目的设计流程,我将项目拆分成几个部分来就行解说,这一小节是一个总述,主要介绍课设的整个框架和最终效果,代码我会放到后面的github链接上,欢迎大家star。如果有一些参考没有加上联系,希望大家可以联系我,因为写的时候查的比较快,没有记录到博主的链接,敬请谅解!!!一、

大家好,又见面了,我是你们的朋友全栈君。

写在前面

这个项目是Java课程的课设,一共花了5天的时间去完成它,在这期间感谢一些博主的帮助,让我了解到了一些新的技术知识,所以打算写这一系列博客来介绍一整个课设项目,也为了帮助之后的人,如有错误,请联系我。

为了更好的让读者了解到整个项目的设计流程,我将项目拆分成几个部分来就行解说,这一小节是一个总述,主要介绍课设的整个框架和最终效果,代码我会放到后面的github链接上,欢迎大家star。如果有一些参考没有加上联系,希望大家可以联系我,因为写的时候查的比较快,没有记录到博主的链接,敬请谅解!!!

重要通知:最近有人下载我的代码去骗一些粉丝的钱,所以大家要注意了!!!一般发出来的博客都是开源的,不会收取大家费用的。因为我在完成这些课设的时候也从其他博主那学习到了很多知识。所以技术肯定是相互学习的,不参杂任何利益。大家日后要警惕!!!

云端代码仓库

代码gitee 下载代码请点击这里
云端仓库 支持git

在这里插入图片描述

如果会使用git的可以直接git,不会的可以下载压缩包,然后自己新建项目自己敲就可以咯!!!本项目是IEDA编写的,eclipse可能不能直接导入!!!

在这里插入图片描述

一、用到的技术栈

  1. Java基础
  2. JavaFX项目技术
  3. Java文件的读写
  4. JSON格式
  5. 一些简单的设计思想(个人拙见)

二、具体博客的拆分讲解

  1. 总体介绍,项目成果展示
  2. 项目所需要的环境安装教程(JavaFX 一些需要的jar包)
  3. 实体类、异常的设计
  4. 课设功能的工具设计
  5. 主界面登陆的设计
  6. 学生界面和功能设计
  7. 管理员的界面和功能设计
  8. 教师界面和功能设计
  9. 整个项目遇到的问题和总结

三、项目的结构

整体结构
项目结构

  • 在controller里面是放界面的控制器的,主要就是写每个见面对应的功能。每一个fx文件里面都会对应一个controller,类似于mybatis里面的mapper和xml相互对应。里面分为了4个部分登陆、管理员、学生、教师。

controller结构

  • db里面是模拟数据库的,因为课设要求使用Java读写文件,所以这里我没使用数据库mysql等技术。如果使用数据库会更加的简单一些,因为他返回的数据很容易转化为对象,不需要考虑太多,对于数据的操作就是使用sql语句完成,目前技术封装的挺好!文件操作就得自己写工具去操作读写文件。

db模拟数据库

  • dto中是存放返回到界面上的数据对象,因为每一个对象并不是每一个成员属性都需要返回到前端,所以使用这些对象去转化会更加的方便理解。
    返回界面的出参

  • images里面存放的是课设所需要的一些小图标(很多命名不规范,因为找到图直接放入文件夹中)
    图片

  • myException是自己的自定义异常处理类,其实不用异常处理也可以(最好使用,但是在可视化中没有具体用到,可以防止程序异常结束),但是为了了解课程就写了一下。
    异常

  • pojo中存放的是实体类,对应数据库中的每一个表(模拟的)相当于一个对象里面有很多个属性。
    实体类

  • utils里面是写的一些工具类,是主要的功能开发的地方,基本上所有的功能都在这些工具里面实现的,使用的时候直接调用工具就可以了(还是挺方便的)
    工具

  • view里面是存放的是使用JavaFX编写的fxml文件显示出来的页面,也是分为登陆、管理员、学生、教师模块
    界面

  • Main是主程序入口,Test是写工具时候的测试类,然后就是题目啦
    主程序

  • 最后是使用的外部jar包,一个是JavaFX必须的开发sdk里面的lib文件夹作为jar引入项目中,另一个是fastjson方便将对象转为json格式
    jar

四、项目展示

  • 登陆界面
    登陆
  • 管理员界面
    管理员主界面
    学生信息
    教师界面
    添加教师
  • 教师界面
    查询学生信息
    成绩信息
    添加学生
    添加成绩
  • 学生界面
    成绩排名

五、小总结

第一篇已经完成,就简单的介绍一下课设的结构和项目成果的展示,为了方便大家选择是否需要这个技术。后面我会把完整的代码放到GitHub上,欢迎大家star!!!

云端代码仓库

代码gitee
云端仓库 支持git

关于本篇的其他的章节

Java课设–学生成绩管理系统二
Java课设–学生成绩管理系统三
Java课设–学生成绩管理系统四
Java课设–学生成绩管理系统五
Java课设–学生成绩管理系统六
Java课设–学生成绩管理系统七
Java课设–学生成绩管理系统八

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/157170.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 独立成分分析 ( ICA ) 与主成分分析 ( PCA ) 的区别「建议收藏」

    独立成分分析 ( ICA ) 与主成分分析 ( PCA ) 的区别「建议收藏」1.前言参考资料:https://www.zhihu.com/question/28845451书上写的是:1.主成分分析假设源信号间彼此非相关,独立成分分析假设源信号间彼此独立。2.主成分分析认为主元之间彼此正交,样本呈高斯分布;独立成分分析则不要求样本呈高斯分布。在利用最大化信息熵的方法进行独立成分分析的时候,需要为源信号假定一个概率密度分布函数g’,进而找出使得g(Y)=g…

  • sendfile函數的使用[通俗易懂]

    sendfile函數的使用[通俗易懂]sendfile函數linux內核新加的函數,可以使得網絡傳輸文件時用户层无需分配缓冲区给将要传输的文件,从而能够节约内存,并直接调用系统调用#include<sys/sendfile.h>ssize_tsendfile(intout_fd,intin_fd,off_toffset,size_tcount);实例:#include<st…

  • r语言ggplot回归分析图_R如何导入数据

    r语言ggplot回归分析图_R如何导入数据#第一章R基础install.packages(c("ggplot2","gcookbook"))library(ggplot2)library(gcookbook)#加载分隔符式的文本文件#data<-read.csv("datafile.csv")#data<-read.csv("datafile.csv",header=FALSE)#手动为列名赋值#name…

  • SQL Server数据库分区分表

    SQL Server数据库分区分表当一个数据表的数据量达到千万级别以后,每次查询都需要消耗大量的时间,所以当表数据量达到一定量级后我们需要对数据表水平切割。水平分区分表就是把逻辑上的一个表,在物理上按照你指定的规则分放到不同的文件里,把一个大的数据文件拆分为多个小文件,还可以把这些小文件放在不同的磁盘下。这样把一个大的文件拆分成多个小文件,便于我们对数据的管理。下面我们来创建表分区代码创建分区表添加文件组代码格式:…

  • C++int转char型并存入char数组「建议收藏」

    C++int转char型并存入char数组「建议收藏」只需在赋值语句后面加上‘0’,如下:inta=10;chara[10];a[1]=a+’0′;

  • vue(17)vue-route路由管理的安装与配置「建议收藏」

    vue(17)vue-route路由管理的安装与配置「建议收藏」介绍VueRouter是Vue.js官方的路由管理器。它和Vue.js的核心深度集成,让构建单页面应用变得易如反掌。包含的功能有:嵌套的路由/视图表模块化的、基于组件的路由配置路由参

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号