项目开发报告
一、 总体介绍
1、系统基本功能要求
(1)学生基本信息、联系方式、入学前信息、家庭信息、社会关系等基本信息的管理
(2)学习信息管理,包括课程基本信息,课程中心(学分、上课时间、地点、参考资料等)选课信息,成绩信息(考勤信息,作业信息)等
(3)学生社会实践、学科竞赛、科技成果、培训讲座、创新项目、校外实习等创新实践信息管理
(4)学生荣誉信息管理,包括获得的各种称号奖励等
(5)学生体育活动、外出旅游、文艺演出、聚会等日常活动管理
(6)学生外出请假信息和生活学习消费等日志信息管理
(7)学生个人信息的统计汇入和统计数据库(简单来讲即绩点与平均消费等信息的计算与呈递,详可见个人画像页面)
(8)学生各种信息的查询统计,综合计分的计算,和学生个人画像、个人简历的生成打印
2、开发平台介绍
我们所使用的开发平台——IDEA,全称IntelliJ IDEA,是Java语言的集成开发环境,IntelliJ在业界被公认为最好的java开发工具之一,尤其在智能代码助手、代码自动提示、重构、J2EE支持、Ant、JUnit、CVS整合、代码审查、 创新的GUI设计等方面的功能可以说是超常的。
优点:最突出的功能自然是调试(Debug),可以对Java代码,JavaScript,JQuery,Ajax等技术进行调试。
比如查看Map类型的对象,如果实现类采用的是哈希映射,则会自动过滤空的Entry实例。
其次,需要动态Evaluate一个表达式的值,比如我得到了一个类的实例,但是并不知晓它的API,可以通过Code Completion点出它所支持的方法。
最后,在多线程调试的情况下,Log on console的功能可以帮你检查多线程执行的情况。
二、 特色说明
本系统依托于SpringBoot与JavaFX,辅助以CSS、JPA等实现学生信息管理。
在本系统中,我们对课程的管理进行了着重的开发,实现了学生端的选课与退课,管理员端对课程开设的控制,学生对自己某门课的成绩与选课情况的数据呈递与公示。
此外,我们还对学生个人简历部分加入绩点与所获荣誉的提示词,以便于学生书写个人简历时作为参考,数据与其他关联表实现了实时更新,最大限度地保证了数据地准确性、可信性、可参考性。对于学生的绩点与平均消费等信息,我们也实现了数据地计算与公示,力求该系统可以最大限度的为同学们提供便利的数据公示。
最后,我们对于参与了个人简历画像的荣誉与绩点实现管理员端特殊管理,尽量地避免因为误操作导致学生荣誉等重要信息录入错误产生地问题。对学生端实现了信息可查看而不可增删改的功能,以便于最大限度保证学生信息安全。
三、 功能列表
1、管理员端
- 人员管理
- 学生管理 B. 教师管理
我们将人员信息管理分为学生信息管理和教师信息管理两个部分,对于每个信息管理模块,我们实现了增删查改功能。
- 教务管理
- 课程管理
管理员端课程管理主要实现了对于课程开设的增删改查。管理员在登入课程管理界面可以进行对课程的增删查改,并且学生在学生端选课中心中可以看到正常的选课信息并可以选课或退选。
- 创新实践管理
管理员端创新实践管理实现了增删查改四个功能。管理员可通过创新实践编号查询对应创新实践活动信息。
- 成绩管理
管理员端成绩管理实现了增删查改四个功能。管理员登入成绩管理页面时可浏览全体学生现有的全部课程的成绩情况,可选择按学生、按成绩或两者皆有的筛选方法来查询成绩。
- 日常活动管理
管理员端日常活动管理实现了增删查改四个功能。管理员可通过日常活动编号查询对应日常活动信息。
- 消费管理
管理员端消费管理实现了增删查改四个功能。管理员登入消费管理界面后可以添加,删除,修改学生消费信息,并可以通过学号姓名查询学生具体到人的消费记录。
荣誉管理
管理员端荣誉管理实现了增删查改四个功能。管理员登入荣誉管理界面后,需要先在查询界面输入学生的学号查找到对应的学生,方可添加,删除,修改学生荣誉信息。
- 请假信息
管理员端请假管理实现了增删查改四个功能。管理员登入请假管理界面后可以添加,删除,修改学生请假信息,并可以通过学号姓名查询学生具体到人的请假记录。学生可以在学生端查询到管理员端录入的信息。
2、学生端
- 信息查询
- 创新实践信息
学生可实现登陆即可查询到自己的创新实践信息
- 日常活动信息
学生可实现登陆即可查询自己的日常活动信息
- 消费信息
学生可实现登陆即可查询自己的消费信息
- 荣誉管理
学生可实现登陆即可查询自己的荣誉信息
- 我的选课&选课信息
学生可通过在选课信息页面实现对课程的查询,选择与退选,可以在我的选课页面查询到目前已选择的课程。
- 个人画像
在学生的个人画像页面,学生可以看到自己的基本信息、课程成绩、绩点、消费信息、平均消费等信息,也可以在个人简历模块查看自己的荣誉与绩点提示词,辅助获取简历信息。同时也可以实现提交保存简历信息与PDF打印。
3.系统总览
四、实体类图
五、主要前后端接口说明
整个项目通过使用@RequestMapping("/api/……")与@PostMapping(/……)
方法实现前后端接口,同时大大减少了无谓重复代码量。对于在学生端与管理员端的URL区分,我们主要采取通过对三级URL的单个简单字符增删来实现URL的区分,这便于理解代码含义以及代码的实现。
例如:/api/fee/getfeelist与/api/fee/getSfeelist
管理员请假信息:"/api/absent/getAbsentList"等 |
管理员课程信息:"/api/course/getCourseList"等 |
管理员日常活动信息:"/api/DailyActivities/getInnovativePracticeList"等 |
管理员消费信息:"/api/fee/getFeeList"等 |
管理员创新实践信息:"/api/innovativePractice/getInnovativePracticeList"等 |
管理员端荣誉管理:"/api/student/getStudentHonourInfo"等 |
学生请假信息:"/api/student/getStuAbsentInformationData"等 |
学生日常活动信息:"/api/student/getStuDaInformationData"等 |
学生消费信息:"/api/student/getStuFeeInformationData"等 |
学生荣誉信息:"/api/student/getStuHonourInformationData"等 |
学生创新实践信息:"/api/student/getStuIpInformationData"等 |
学生课程选择:"/api/course/select/get"等 |
学生课程信息:"/api/course/getCourseList"等 |
学生管理:"/api/student/getStudentList"等 |
学生成绩信息:"/api/score/getScoreList"等 |
学生画像信息:"/api/student/getStudentIntroduceData"等 |
六、主要类方法说明
此处对创新实践管理进行了举例说明,主要实现了管理员端对创新实践管理的增删改查等操作,其他日常活动管理、荣誉管理、日志管理等与此类似,不同的是查询串有所差异。
学生端信息查询的实现类和方法
七、主要系统截图
##
//第一次写csdn,也是第一次做项目,不太熟悉,有什么地方不当还请各位指摘,源码上传到csdn另一个地方了,(忘记叫啥了,是个上传资源的地方)
(另附项目指导文档稍候发表)