学生成绩查询web系统—功能概述
文章目录
任务摘要
对基于JSP+Mysql实现的简单的学生成绩查询web系统功能做一个简单的阐述,帮助大家了解其系统功能的实现。
一、前景介绍
1、背景
随着学生数量的日渐增多,学生教务系统的数据量也不断增加,这无疑大大增加了教务系统的负担。如果能把负责学生成绩管理的模块独立出来形成一个独立的系统,便可以有效降低教务系统的数据量,不仅可以方便管理员对于所有学生的信息进行系统的管理,而且便于教师对学生成绩进行查询和修改,学生也可以查询自己的成绩。这些优点能够极大地提高学生成绩管理的效率。因此,开发一套合适的、兼容性好的系统是很有必要的。
2、规划
一个基于JSP成绩管理系统
- 良好的前端展示,便于用户操作,可以轻松上手
- 具有可靠性,系统不同角色分配的权限合理,不泄露用户信息
- 可以批量录入信息,实现对信息的增删改查
- 反应迅速,能及时给出反馈
二、技术分析
1、前端技术
前端主要使用html、css、js等基本技术,此外还用到bootstrap、jQuery、jstl等技术使得前端交互性增强。页面布局多采用相对布局,放大或缩小页面,页面内容分仍保持相对位置。
Frame框架
用于实现页面的局部加载和刷新。
jQuery技术
为了可以直接在某条记录上动态修改数据(即直接在当前页面修改而不是重新打开一个修改数据的页面),采用了jQuery技术,实现了在记录原位置直接修改数据。
Ajax
AJAX 是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。AJAX 通过在后台与服务器进行少量数据交换,使网页实现异步更新。
JSON
JavaScript Object Notation(JavaScript 对象表示法)
JSON 是存储和交换文本信息的语法。类似 XML,比 XML 更小、更快,更易解析,是一种轻量级的数据传输方式。
2、后端技术
DAO (DataAccessObjects 数据存取对象)是指位于业务逻辑和持久化数据之间实现对持久化数据的访问
。通俗来讲,就是将数据库操作都封装
起来。
DAO 模式提供了访问关系型数据库系统所需操作的接口,将数据访问和业务逻辑分离对上层提供面向对象的数据访问接口。
DAO 模式的优势----两次隔离
- 隔离了数据访问代码和业务逻辑代码。业务逻辑代码直接调用DAO方法即可,完全感觉不到数据库表的存在。分工明确,数据访问层代码变化不影响业务逻辑代码,这符合单一职能原则,降低了藕合性,提高了可复用性
- 隔离了不同数据库实现。采用面向接口编程,如果底层数据库变化,如由 MySQL 变成 Oracle 只要增加 DAO 接口的新实现类即可,原有 MySQL 实现不用修改。这符合”开-闭”原则。该原则降低了代码的藕合性,提高了代码扩展性和系统的可移植性
三层架构(web层、service层和dao层)
三层架构(web层、service层和dao层)
Controller层:(也叫web层)Controller层负责具体的业务模块流程的控制,在此层里面要调用Serice层的接口来控制业务流程。
Service层:Service层主要负责业务模块的逻辑应用设计。调用DAO层存取数据。
DAO层:DAO层主要是做数据持久层的工作,负责与数据库进行联络的一些任务都封装在此,DAO层的设计首先是设计DAO的接口,然后定义此接口的实现类,然后就可在模块中调用此接口来进行数据业务的处理,而不用关心此接口的具体实现类是哪个类,显得结构非常清晰。
3、数据库
数据库的连接
采用mysql数据库,连接数据库用到jdbc数据库驱动。数据库连接池负责分配、管理和释放数据库连接,它允许应用程序重复使用一个现有的数据库连接,而不是再重新建立一个;释放空闲时间超过最大空闲时间的数据库连接来避免因为没有释放数据库连接而引起的数据库连接遗漏。
数据库的设计
该系统使用关系型数据库,建表时采用关系模型的数据结构,每个实体对应一张表,联系若有属性,也可对应一张表,如学生实体对应一张学生表,课程对应一张课程表,课程和学生之间是学习的关系,他们会产生一个属性-分数,因此也应该有一张学生课程表。
设置表的主键、外键以及表之间的级联关系。如:成绩表中的学生必须是学生表中存在的学生,当删除学生表中某一个学生时,若两张表是级联删除关系时,成绩表中该学生的信息自动删除。更新时也一样。这样避免了后端逻辑实现的复杂性。
服务器
使用Tomcat服务器。Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。
4、登录验证
统有学生、教师和管理员三种不同身份的用户,系统分别为设置权限等级,当某用户登录时,系统会检索他们的等级,让他们访问对应的操作页面,学生进入学生系统模块,教师进入教师系统模块,管理员进入管理员系统模块。
三、功能模块
1、系统划分及功能
学生成绩管理系统分为三个模块:学生模块、教师模块和管理员模块。
- 学生模块的功能:个人信息的查询,部分信息的修改,本人成绩的查询
- 教师模块的功能:个人信息的查询,成绩的录入、修改、查看和分析
- 管理员模块的功能:对学生、教师、班级、课程的增删改查,课程的安排,系统用户的添加和删除
2、功能例图
,学生成绩管理系统包括三个参与者:学生、教师、管理员
。根据不同身份的用户和系统的交互活动不同,可以画出如下用例
四、系统设计
1、系统结构
学生成绩管理系统分为学生、教师和管理员三大模块。每个模块有分为几个子功能模块。
学生登录后可进行的操作:
- 查看个人资料
- 修改个人资料
- 查询分数
教师登陆后可进行的操作:
- 查看个人资料
- 修改个人资料
- 录入学生成绩
- 修改成绩
- 查询学生成绩
- 成绩分析统计查询
管理员登陆后可进行的操作:
- 管理学生信息
- 管理教师信息
- 基本信息管理
- 系统用户信息管理
2、数据表
student(学生表)
teacher(教师表)
score(成绩表)
3、E-R图
系统整体的实体关系图
学生信息实体E-R图
教师信息实体E-R图
成绩信息实体E-R图
4、系统流程图
学生
教师
管理员
总结
此篇文章主要对简易的学生成绩管理web系统功能做一个简单的描述,让大家可以清楚的理解其功能,当然系统的功能也比较简单,很容易上手的。主要就是针对学生成绩管理的相关操作。希望这篇文章对你有所帮助。