SSH的学生成绩信息管理系统的具体研究论文

时间:2021-08-31

SSH的学生成绩信息管理系统的具体研究论文

  摘要:本系统是Browser/Server的结构, 能够统一客户端, 将主要功能实现的核心部分集中在了服务器上。在技术上是以Java、Hibernate、Spring、Struts和MYSQL数据库来开发和实现的。不但注重系统的实际操作, 系统的布局简洁, 功能清晰, 也能够让使用者清楚明了的进行操作, 符合了学生和老师的需要。本文主要介绍了该系统的具体设计及实现与测试。

  关键词:学生成绩信息管理; Browser/Server结构; MYSQL数据库; 具体设计; 实现与测试;

  1系统概要设计

  1.1系统总体设计

  学生成绩管理系统采用了SSH框架进行开发, 共有表现层、业务逻辑层、数据持久层三层。当中MVC框架是由Struts框架来完成, 负责处理系统的整体业务。系统的数据持久层由Hibernate来完成, 它封装了底层的JDBC, 能将对象直接映射到关系型数据库中, 如本系统中使用的Mysql数据库。还提供了面向对象的API, 让用户可以方便直观地操作数据库。Spring是本系统的业务层组件, 它能方便地管理对象, 利用bean容器对对象进行管理。Spring还能够帮助Hibernate管理DAO层, 使用注释编程风格, 它可以写出优雅的代码[1,2]。

  用户打开系统首先面对的是表现层, 表现层是由JSP页面实现的, 用户与JSP页面交互。

  1.2系统架构设计

  本系统采用的是浏览器和服务器结构, 也叫B/S结构设计。本学生成绩信息管理系统面向的对象是管理员 (教师) 和学生, 根据他们的需求分析得知他们使用本系统的方式以浏览器为主, 并不需要客户端来使用, 因此决定使用B/S结构来设计此系统。

  1.3用户名/口令认证

  系统需要根据用户输入用户名和密码进行验证的方式来登录, 当用户输入了用户名和密码之后, 会在数据库中进行查找, 如果能够查找到数据并且匹配正确的话则登录成功, 若数据不能匹配, 则根据错误信息提示用户。

  1.4系统开发环境

  操作系统:Windows 7

  JDK版本:1.7.0

  IDE:My Eclipse

  WEB框架:J2EE

  网络协议:TCP/IP[3]

  服务器:tomcat6[3]

  数据库:mysql5.0;[3]

  浏览器:Internet Explorer 5.0以上;[3]

  前端框架:Java Script

  其他开发框架:Hibernate, Struts2, Spring

  2系统详细设计

  2.1总体设计目标

  实现该学生成绩信息管理系统的几个主要功能如下:

  1.教师统一管理学生的个人信息、班级信息、课程信息、成绩信息, 能够增删改查;

  2.学生可以管理自己的个人信息, 能够查看修改

  3.学生可以管理自己的课程信息, 能够查看修改

  4.学生可以查看自己的学生成绩信息

  5.学生可以通过课程信息来进行相应的选课

  2.2 登录模块设计

  在用户进入本系统时首先就是登陆界面, 登陆界面的实现类是Login Action[4,5], 满足登陆信息录入功能。在登陆界面设置两个文本编辑框, 分别输入用户名和密码, 并设置两种用户角色, 分别是管理员和学生。学生学号作为学生用户的唯一性标识, 而密码的作用是确认这个账号的归属性。

  2.3 管理员操作模块设计

  在系统中, 老师需要对学生的个人信息, 班级信息, 选课信息, 成绩信息进行管理, 还需要归纳总结出一个总成绩, 所以针对管理员部分, 需要设计五个模块, 下面对相关功能进行详细介绍。

  2.3.1 班级信息管理模块界面及功能设计

  班级信息管理模块的内容包括班级信息添加和班级信息查询这两个模块。

  班级信息添加界面:包括班级编号、班级名称、班主任、联系电话、成立日期五个text文本编辑框以及保存和重写两个按钮, 其中在添加班级信息时班级编号和班级名称两项不能为空, 如果为空, 点击保存时会提示不能为空, 从而无法完成添加班级信息的要求。

  班级信息查询界面:用户可以根据班级编号、班级名称、联系电话、成立日期中的任何一项进行查询, 查询结果以表格的形式呈现给用户, 并以每一页显示三条记录进行分页显示。此界面还有编辑和删除两个按钮, 可以根据用户需要对班级信息进行编辑和删除操作, 充分的满足用户的各种需求。 (学生信息管理、课程信息管理与班级信息管理类似, 在此不做介绍了)

  2.3.2 成绩信息管理模块界面及功能设计

  成绩信息管理模块包括成绩信息添加和查询两个模块。

  成绩信息添加界面:包括学生学号、课程信息和成绩分数三个小模块。其中用户需要在学生学号处输入正确的学生学号并点击获取学生信息按钮, 点击后会显示学生的姓名、性别、班级、出生日期和电话号码五个信息, 此时课程信息处的下拉框里有了学生所选课程的名称, 根据学生考试所得分数对成绩分数进行录入, 录入结束后点击保存对该学生课程成绩进行保存。

  成绩信息查询界面:用户可以根据学生姓名和课程信息中的任意一项进行查询, 查询结果一目了然。如果录入错误, 可以点击编辑或者删除进行相应的操作, 以满足用户的需要。

  2.3.3 总成绩信息管理模块界面及功能设计

  总成绩信息管理模块包括总成绩信息生成和总成绩信息查询两个模块。

  总成绩信息管理界面:只有请选择班级进行总成绩的生成一项, 根据下拉框显示的班级进行对应的选择, 然后点击生成总成绩按钮即可生成总成绩。

  总成绩信息查询界面:显示学生各门课程成绩, 并在最后生成总成绩。该界面也可以对数据进行编辑和删除, 并可以以Excel表格形式导出。

  2.4 学生操作模块设计

  学生登入系统之后主要有三个功能:学生个人信息查看和修改, 查看自己的课程和选课、查看自己的成绩。其中点击学生成绩查询可以查询到个人的考试成绩, 修改个人信息一项可以对个人信息进行编辑修改, 学生选课一项需要选择想要选择的课程, 课程信息可以显示出课程的名称, 编号, 讲课老师等基本信息, 根据课程的.信息确定要选择的课程, 然后点击确定按钮完成选课。

  2.5.2 数据库逻辑结构设计

  通过对学生成绩管理系统的分析, 总结出了以下几点:

  1.用户只分老师和学生两种, 并且一个用户只能有一种身份。

  2.教师拥有最高级的全下可以对学生信息, 课程信息, 成绩信息, 总成绩的管理。

  3.学生用户能够查看和修改个人信息和成绩信息, 能够查看成绩信息, 能够进行选课。

  通过以上对用户需求和系统功能的分析与总结, 根据实际设计了符合条件的数据项和数据结构, 创建7张基本的数据表, 分别为:管理员信息表、学生信息表、班级信息表、课程信息表、成绩信息表、选课信息表、总成绩信息表。由于篇幅原因, 下面只列举总成绩信息表, 包括数据项:总成绩编号、学生学号、总成绩。总成绩表结构如表1所示。

  2.5.3 数据库物理设计

  本系统共使用了7张基本表来满足项目的基本实现要求, 每一张表之间都存在着相互的关联, 保证了系统功能的全面和数据信息存储的稳定。下面同样只介绍一下创建总成绩信息表所使用到的SQL语句:

  下面对执行上述SQL语句创建的表进行介绍:

  3 系统的实现与测试

  3.1 系统功能实现

  3.1.1 用户登录

  1.设计用户登陆页面

  用户的登录页面包括输入用户名和密码的文本框, 以及选择用户身份的下拉框, 有管理员和学生两个选项, 输入正确的用户信息才能进入到对应的系统中去。通过Java Script函数对用户的输入信息进行验证, 验证用户名密码是否正确, 是否为空。用户的登陆页面, 如图7所示。

  2.用户登陆Action实现类

  当用户在登录界面中输入完用户名和密码之后, 系统会访问一个URL为/Score System/com.scoresystem.action/Login Action.java。在URL地址有用户登录是用来验证用户身份的方法Check Login () [7]。

  在验证用户身份方法Check Login () 中, 系统会将用户输入过来的的参数强制转换成Admin类型的对象并赋值于新的Admin类型对象。在验证用户登录的操作时, 系统会检查数据库中是否有对应的信息, 如果有信息的话系统会根据返回的信息反过来去查看用户的角色分类, 从而根据返回分类的不同进入到不同的界面当中去[8,9,10]。

  4.配置structs.xml文件

  在structs.xml文件中配置用户登陆模块所涉及到的元素, 该元素用于指定用户登陆模块所使用的actionform。在structs.xml文件中配置用户登陆模块所涉及到得元素, 该元素用于完成对页面的逻辑跳转工作[11,12,13]。

  3.1 系统的测试

  考虑到本系统的实际使用是以操作简单, 功能结构清晰的情况, 本次测试主要是以黑盒测试为主进行的测试。

  1.当不输入用户名直接点击登录时。产生结果如图10所示。

  2.当没有输入用户密码时, 系统会弹出一个消息框来提示操作者输入用户密码如图11。

  3.当输入用户及密码, 但是用户名错误或者密码输入错误时, 系统也会弹出一个对话框来提示操作者更改输入信息。如图12。

  5总结

  本系统采用了JAVA语言进, 并使用了当前流行的、功能强大的Struts、Hibernate和Spring三大框架进行项目开发, 数据库服务器则选择了当前流行且使用方便的MYSQL数据库[14]。目前, 本系统下的各个功能已经全部实现, 即教师端:对学生信息进行管理、对班级信息进行管理、对学生选课信息进行管理、对课程信息进行管理、对学生成绩信息进行管理;学生端:查询和修改个人信息、查询课程信息、查询个人成绩、选课[15]。本系统目前在我院成功试运行, 完成了对学生成绩信息的专业化管理的目的。

  参考文献

  [1]廖义奎.Java Web开发之Srtuts编程基础与实例精讲[M].中国电力出版社, 2006:133-137.

  [2]陈天河.Struts.Hibernate.Spring集成开发宝典[M].电子工业出版社, 2007:246-249.

  [3]孙卫琴, 李洪成.Tomcat与Java Web开发技术详解[M].电子工业出版社, 2004:56-61.

  [4]张洪伟.Tomcat Web开发及整合应用[M].北京.清华大学出版社, 2006:10-230.

  [5]石志国, 薛为民, 董洁.JSP高等学校计算机语言应用教程[M].清华大学出版社, 2004:190-196.

  [6]李刚.Struts2权威指南:基于Web Work核心的MVC开发[M].电子工业出版社, 2007:93-332.

  [7]梁立新.项目实践精解:基于Struts-Spring-Hibernate的Java应用开发.第2版[M].电子工业出版社, 2008.

  [8]郭煦, 闯恩华.中间件技术在Web系统中的应用[J].上海电机学院学报, 2006, 9 (3) :33-45.

  [9]孙卫琴.Java网络编程精解[M].电子工业出版社, 2007:66-70.

  [10]邱哲, 王俊标, 马斗.Java开发利器:Struts Web设计与开发大全[M].清华大学出版社, 2006:67-72.

  [11]Marty Hall, 霍尔, Hall, 等.Servlet与JSP权威指南[M].机械工业出版社, 2002.

  [12]Manheim M L.An architecture for active DSS[C]//Hawaii International Conference on System Sciences, 1988.Vol.iii.Decision Support and Knowledge Based Systems Track.IEEE, 2002:356-365.

  [13]Bruce Eckel.Theoretical Artificial Intelligence[J], 1998, 10 (4) :393-402.

  [14]Kang Jian-Ping.Editorial.Web Dynamics[J].Computer Netorks, 2002, 39:221-223.

  [15]田文涛, 张钊, 张笑冰.基于SSH的学生成绩信息管理系统的设计与分析[J].软件, 2017, 38 (11) :212-215.

【SSH的学生成绩信息管理系统的具体研究论文】相关文章:

1.客户信息管理系统的研究论文

2.学校信息管理系统的设计与开发研究论文

3.探析学生成绩信息管理系统的结构与创建论文

4.专题研究论文的具体研究方法

5.关于软件开发信息管理系统的设计研究论文

6.心电网络信息管理与远程会诊系统的定制研究论文

7.学校信息管理系统的设计与开发研究的论文

8.企业信息管理研究论文