java课程设计总—学生成绩管理系统

本文详细介绍了使用JavaWeb技术实现的学生管理系统,包括登录注册、成绩与学生信息管理、报表生成(Excel和PDF)及数据库操作。开发者分享了他们在项目中的学习过程和感想,强调了系统性知识、实践和团队合作的重要性。
摘要由CSDN通过智能技术生成

一、项目简介

功能描述:基本完成了任务书上的各个功能。

● 登录(教师, 学生)

● 注册(教师, 验证码)

● 找回密码(教师, 学生)

● 学生管理(增删改查)

● 成绩管理(修改, 导出excel)

● 上传文件(头像)

● 个人成绩(导出pdf)

个人负责任务

  1. 添加学生功能:姓名、学号、性别、入学日期。(学号手动填写,学号唯一且无法改变)
  2. 添加学生成绩功能:假设每个人都选修了数学、Java与体育。但输入成绩的时候,是给学生输入某一门课程的成绩。
  3. 根据学生学号查找学生成绩,并在界面上显示姓名、学号和成绩,学号不存在的给出提示信息
  4. 根据学生姓名(支持模糊匹配)查找学生成绩,并在界面上显示姓名、学号和成绩,如果有多个相同姓名学生存在,一起显示出来,姓名不存在的给出提示信息
  5. 生成学生学习情况报表:报表包含学号、姓名、各科目成绩。最后在图形界面输出,并可将该排序结果按照输出至excel文件
  6. 支持分别对所有学生各科成绩画出表格。
  7. 支持对学生信息的修改与删除(在数据库中有所体现),不能修改学号。
  8. 支持用户登录、验证操作
    界面:GUI 或 Web
    数据存储在数据库或者文件中,存储在数据库。

二、功能架构图

 

三、个人任务简述

1. 完成的任务与功能

序号

完成功能与任务

描述

1

添加学生功能

通过填写数据,成功向数据库中填入了新的学生。

2

添加学生成绩功能

使用多个数组组合的形式。避免了直接使用大数组可能带来的问题,。提高了拓展性和可维护性。

3

根据学生学号查找学生成绩

实现了通过输入特定学号来查找特定人。当输入错误时会给出错误信息。

4

根据学生姓名查找(支持模糊匹配)学生成绩

通过输入姓名来找到特定的对象。可以模糊匹配;

序号

完成功能与任务

描述

1

生成学生学习情况报表

报表包含学号、姓名、各科目成绩。最后在图形界面输出,并可将该排序结果按照输出至excel文件
 

2

生成学生成绩报表

支持分别对所有学生各科成绩画出表格。

3

对学生信息的修改与删除

支持对学生信息的修改与删除(在数据库中有所体现),不能修改学号。

4

支持用户登录、验证操作

界面:GUI 或 Web
数据存储在数据库或者文件中,存储在数据库。

2. Git提交记录截图:

四、本人负责功能详解

  1. 添加学生功能:姓名、学号、性别、入学日期。(学号手动填写,学号唯一且无法改变)

复制模板;创建studentD和scoreD对象;获取studentD的各项数据;调用studentD中的函数进行数据存储;重定位,打开添加完后的页面。

 

 

 

2.添加学生成绩功能:假设每个人都选修了数学、Java与体育。但输入成绩的时候,是给学生输入某一门课程的成绩。

复制框架;创建scored对象;获取scored相应的数据;建立类似数组的存在;调用相应dao里的更新函数;凭借id和sql语句实现对数据库的更新;最后重定向,展示更新后的页面,实现功能。

 

 

 

3.根据学生学号查找学生成绩,并在界面上显示姓名、学号和成绩,学号不存在的给出提示信息

复制模板;利用if else语句,如果搜索栏空或全是空格,那么等同于直接全部显示;如果搜索栏是有效内容,那么根据有效内容来搜索;如果有,则显示相关,没有,那么直接报错。

 

 

 

4.根据学生姓名(支持模糊匹配)查找学生成绩,并在界面上显示姓名、学号和成绩,如果有多个相同姓名学生存在,一起显示出来,姓名不存在的给出提示信息

复制模板;利用if else语句,如果搜索栏空或全是空格,那么等同于直接全部显示;如果搜索栏是有效内容,那么根据有效内容来搜索;如果有,则显示相关,没有,那么直接报错。

 

5.生成学生学习情况报表:报表包含学号、姓名、各科目成绩。最后在图形界面输出,并可将该排序结果按照输出至excel文件

 

 

详细步骤:通过老师端的成绩管理导出excel操作调用底层excel.jsp等文件将学生成绩信息整理成excel形式供打印查看。

部分代码展示:excel.jsp

 

6.支持分别对所有学生各科成绩画出表格。

详细步骤:通过老师端的pdf操作调用底层pdf.jsp等文件将学生成绩信息整理成pdf形式供打印查看。

部分代码展示:pdf.jsp

 

7.支持对学生信息的修改与删除(在数据库中有所体现),不能修改学号。

 

详细步骤:通过老师端在学生信息管理条对学生信息进行修改与删除。

部分代码展示:

 

8.支持用户登录、验证操作
界面:GUI 或 Web
数据存储在数据库或者文件中,存储在数据库。

详细步骤通过:在初始界面进行注册,登录等功能,调用了login,register等文件从而实现。

部分代码展示:

五、课程设计感想

队员一:面对新的知识,刚开始完全是懵圈的,完全没有思路。所以我就广撒网,从网上找到了信息管理系统的搭建方法。通过这种方式,学会了javaweb和sql的简单使用方法。然后从网络上寻找一些已经搭建成功的先例。找出我能使用的模板,根据已经学会的Java 基础知识,搭配模板,最后成功搭建成功了。在这中间,一旦遇到bug至少要修改1个小时,因为自身的知识并不完整。

队员二:在进行 Java 课程设计的过程中,我有以下几点感想:

1.系统性知识的重要性

Java 作为一门编程语言,在其语法和语义方面的特性已经非常成熟和完备。因此,在进行 Java 课程设计时,我们需要更多地关注如何应用这些知识来实现具体的功能。这就需要我们具备一定的系统性知识,能够对 Java 生态圈中的各个组件、框架、工具等进行综合运用,才能更好地完成任务。

2.实践的重要性

尽管理论知识很重要,但只有通过实践才能掌握真正的技能。通过进行 Java 课程设计,我们能够更好地将理论知识应用到实际项目中去,并在实践中逐步积累经验和技能。因此,在学习 Java 课程时,我们需要注重实践,多写代码,多实践,不断提升自己的技能水平。

3.团队合作的能力

在 Java 课程设计过程中,往往需要多人协作完成。这就需要我们具备良好的团队合作能力,在协商中达成共识,在分工中明确职责,在沟通中保持良好的团队氛围,才能更好地完成任务。因此,我们在进行 Java 课程设计时,需要注重团队合作能力的培养。

综上所述,Java 课程设计既是一门理论学科,也是一门实践技能。对于学习者来说,需要注重系统性知识的掌握、实践能力的提升以及团队合作能力的培养,才能更好地应对未来的工作挑战。

六、展望

队员一:1. 我还没有学会柱状图的表示方法。以及对于提示的使用也非常生疏。以后会通过完整的学习逐渐掌握相关的方法。

2. 课设后想要进一步学习javaweb技术、增加柱状图功能、重构项目代码、增加test测试。

队员二:1.编码能力:Java 是一门非常严谨的编程语言,要求开发者具备良好的编码习惯和高效的编程能力。我在编码方面存在一些不足,可以通过继续学习和实践来提高自己的编码技能。

2.系统设计能力:Java 应用程序通常是复杂的系统,需要开发者具备良好的系统设计能力。我在系统设计方面存在很大不足,要从理论和实践两方面入手,学习系统设计原则和最佳实践,同时积极参与实际项目,提高自己的系统设计能力。

3.框架使用能力:Java 生态系统中有许多成熟的框架和工具,如 Spring、Hibernate 等,能够大大提高开发效率和代码质量。可以在学习完 Java 的基础知识后,继续深入学习这些框架。

4.Java 作为一门广泛应用于企业级应用程序和后端开发的语言,将继续有着广阔的发展前景。未来的 Java 技术栈可能会继续扩展,新的技术和框架也会不断涌现,因此 Java 开发者需要保持学习和更新的态度,不断学习新的知识和技能,以适应技术的快速变化。总之,Java 是一个非常有前途的编程语言,将为我的职业发展提供更高的薪资水平和更广阔的机会。

  • 0
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值