基于SSH的高校学生学籍管理系统设计与实现

2017-11-02 11:50连雁平
关键词:学籍高校学生框架

连雁平

(1.武夷学院数学与计算机学院,福建武夷山354300;2.武夷学院认知计算与智能信息处理实验室,福建武夷山354300)

基于SSH的高校学生学籍管理系统设计与实现

连雁平1,2

(1.武夷学院数学与计算机学院,福建武夷山354300;2.武夷学院认知计算与智能信息处理实验室,福建武夷山354300)

以Java语言为基础,结合SQLServer数据库,利用Struts、Spring和Hibernate三个开源框架的“SSH”组合,设计和实现多层结构体系的高校学生学籍管理系统,该系统具有信息数据录入、学籍信息输出查询以及各种不同数据格式转换等功能,提高了高校学生学籍管理的标准化、网络化以及模块化,满足了学校教务部门个性化的需求。

学生学籍管理;SSH架构;MVC三层模式;网络化管理

高校学生学籍管理是一项十分复杂的工作,海量的信息数据给高校教学管理工作带来负担。传统的学籍管理方法笨拙、效率低、安全系统不完善[1],为了弥补传统人工管理方式的缺陷,本文设计了基于SSH的高校学生学籍管理系统,该系统能够大大减少工作量,简化工作环节,缩短工作流程,在一定程度上降低出错率,通过智能化和个性化的设计,将各个领域模块连成网络,实现信息资源共享,提高高校学籍管理效率和管理能力[2-3]。

随着Internet发展以及信息高速化、WEB技术的逐渐完善,B/S结构作为新的网络结构的防火墙,能够确保系统数据的安全性。本文主要阐述以Java语言为基础,结合SQL Server数据库,利用Struts、Spring和Hibernate三个开源框架的“SSH”组合,设计和实现多层结构体系的高校学生学籍管理系统。多层体系包括客户层、应用层和数据层,客户层包括各应用系统前端程序和浏览器,应用系统前端程序通过调用业务功能部件来完成各项业务处理,浏览器由服务器提供各项功能支持;应用层实现系统的全部功能服务,主要由WEB服务器、业务功能模块、应用服务器组成;数据层提供安全数据访问和数据存储管理服务[4-5]。

1 系统需求分析

1.1 系统功能需求

从目前的整体情况来看,国内学校学籍信息管理水平不高,多数学校的信息管理还停留在纸质手工记录的基础上,管理手段落后,无法适应现代化管理的需求。在当今社会,利用计算机构建管理信息系统对信息进行管理已经成为一种必然,因为计算机的天然优势,新的管理理念和运作模式,对传统的管理方式和手段造成了重大的冲击,也完美地解决了传统管理中存在的重大问题[6]。

根据管理的实际流程,结合学校对学生学籍管理的要求和意见,高校学生学籍管理系统的基本目标为:

(1)管理所有成员信息。利用系统能够随时而方便地对每个学生的基本情况进行了解和掌握,包括姓名、学籍号、成绩情况等等。

(2)权限的合理配置。对于系统的使用者而言,至少需要包括学生、任课老师、教务处、系统管理员等用户。

(3)浏览查询方便。对于系统中的成员信息,能够快速便捷地查找和浏览,并进行后续的各种操作处理。

(4)学生信息变动管理。可能存在学生信息变动等情形,需要按照情况进行信息的修改和维护等。

1.2 系统非功能需求

一个良好的管理系统,不仅仅局限于实现了设计的模块功能,更重要的是完成它的服务功能,具体给用户带来方便,实现办公智能与高效的特点,最大限度完成各个模块功能的最好结合[7]。高校学生学籍管理系统的还应达到以下目标:

(1)反应快。高校学生学籍管理系统信息太多,而且处理起来十分复杂,高速便成为了判断系统性能的重要参数,系统的目标是要最大限度提速。

(2)操作容易。系统操作起来更容易接受,用户可以很快掌握要领。管理者在进行学籍信息操作时,可以很方便地快速完成操作,处理好的数据直观地反映出结果。

(3)易于维护。系统要随时适应时代的进步,很好地在各种变化的环境中存在,系统要有足够的安全性,还要易于维护改正。

(4)安全。安全是必不可少的,高校学生学籍管理系统也要实现信息数据的安全可靠。

(5)拷贝。数据的拷贝可以防止信息流失,设计者要跟踪市场动态,尽量保证手头信息资料的保存,确保设计开发过程的正常进行。

(6)收集功能。立即构建信息网络,实现资源共享,手机响应领域等的全方位信息。

2 SSH开源框架

SSH开源框架是构建该高校学生学籍管理系统的技术基础,本文主要介绍在Java语言基础上,采用SQL Server数据库,结合SSH开源框架的优点,设计实现高校学生学籍管理系统。

2.1 Struts框架

Struts是Apache软件基金会的一个开放源码项目。Struts是一个非常好的MVC框架,给予了对研发MVC系统的底层支持,它运用的主要技术包括Servlet、JSP及标签库[8]。在Struts框架中控制器功能由ActionServlet完成,ActionServlet包含一组立足于配置的ActionMapping。模型部分由Action与ActionForm对象组成,所有的Action控制器对象都是研发人员从Struts的Action类派生的子类。Action控制器对象封装了具体的处置逻辑,调用业务逻辑模块,并将响应提交给合适的视图组件以进行响应;Struts给予的ActionForm组件对象能够利用指定属性描述客户端表单数据,研发人员能够从它派生子类对象,运用它与Struts给予的自定义标签库整合能够实现对客户端的表单(ActionForm)数据的良好封装与支持,Action控制器对象能够直接对它进行读写,而无需与Request、Response对象执行数据交互[8-9]。

2.2 Spring框架

Spring Framework属于开源的Java/Java EE的应用程序框架,它给予了一个简易的研发方式,这种研发方式,将避免底层代码变得紊乱。Spring包括核心容器、Spring上下文、Spring AOP、Spring DAO、Spring ORM、Spring Web模块、Spring MVC框架等7个部分。Spring框架适用范围极其广泛,Spring的一个典型特征是不要求特定的环境才能使用,因此它的使用领域很广[8-9]。

2.3 Hibernate框架

Hibernate是一种可完成ORM的框架,完成对象关系映射这个功能的框架有许多,Hibernate是这些框架中最流行、最受研发人员关注的[8-9]。其主要涉及到的接口有:具备访问数据库的操作接口,包含Session接口、Transaction接口以及Query接口;用来配置Hibernate的Configuration接口;间接接口,使运用程序获悉Hibernate内部产生的事件,并且作出相关的回应,包含Interceptor接口、Lifecycle接口以及Validatable接口;用来扩展Hibernate功能的接口[10]。

3 系统设计与实现

3.1 系统体系结构设计

高校学生学籍管理系统的使用者为学生、任课老师、教务处、系统管理员。为确保稳定、高效且安全地提供各项服务,系统采用的是B/S架构的三层架构模型,如图1所示。

图1 高校学生学籍管理系统MVC三层架构模型

(1)应用层:各类用户的使用接口,用于通过HTTP协议用户登录之后进行数据交互,显示用户的数据资源请求并将其传输给业务逻辑层。向用户提供一个可视化的交互界面,实时接收和反馈信息。

(2)逻辑层:系统的主要业务功能的实现都是在业务逻辑层,包括制定相关的业务规则,并处理业务流程以完成系统的各项功能。业务逻辑层是应用层和数据层的中间层,在整个系统中起到数据的传输和处理的作用。

(3)数据层:通过SQL Server的数据库结构化查询语句来访问数据库,运用相关的数据操作来维护数据块中的内容,通过添加、删除、更新操作来管理数据。

系统总体功能结构图如图2所示。

图2 系统总体结构图

3.2 系统模块设计

由于本系统设计过程中涉及到较多的界面开发和代码编写,在此主要以班级信息管理模块为例。在班级学籍管理中,主要是对班级信息的管理。通常情况下班级信息管理有以下5个子功能模块:班级信息浏览;维护班级信息;查询班级信息;查询开课信息;维护班级课程。

利用班级管理模块对班级信息进行管理,主要过程是在班级管理页面上,进行动态检索班级、检索所有班级、删除班级、编辑班级、添加班级等操作时,将操作请求提交给班级信息管理ClassAction类,同时利用班级信息ClassForm类封装表单数据,通过Spring的IoC机制调用班级信息管理DAO类接口类ClassDAO类,最终利用ClassDAOImpl类,通过Hibernate层实现与班级信息表class交互,完成班级管理功能。

下面按照班级管理页面、班级管理Action类、班级管理ActionForm类、班级管理DAO类等步骤阐述班级管理模块实现。

3.2.1 班级管理页面

(1)班级管理列表页面。上部是查询班级信息的窗口,包括班级名输入栏及查询、重置按钮;下部是班级信息列表,表头包括班级名称、操作栏,在班级信息列表中,班级名称左侧有一个选择框,班级名称右侧有一个“查看班级课程信息”操作按钮;在最下部,包括页码数、记录数、前后页操作链接以及添加、删除、修改等操作链接。

(2)维护课程、增加课程页面。操作界面包括班级名称输入接口、课程名下拉选择框、教师姓名输入接口、学期下拉选择框、学分输入接口,以及保存、返回操作链接。

3.2.2 班级管理Action类

班级管理Action类ClassAction类继承自BaseAction,其中动态检索班级的list()方法、调用业务逻辑ClassDao类操作、检索所有班级的findAll()方法、删除班级的delete()方法、编辑班级的edit()方法、添加班级的addClass()方法与学生学籍管理的CollegerAction类中相应方法实现过程类似,这里仅阐述查看班级详细信息的detail()方法实现过程。

查看班级详细信息的detail()方法:利用Request类的getParameter(“id”)方法获得班级信息ID属性 id,利用ClassDao类的findClassById(id)方法获得班级信息 class,利用 SyllabusDao类的findSyllabusByClass(class) 方法查看该班课程列表 syllabuses,利用 Request类的 setAttribute(“syllabuses”,syllabuses)方法设置该班课程列表信息,利用 Request类的 setAttribute(“class”,class)方法设置该班详细信息,最后利用return mapping.findForward(“detail”)方法转到班级详细信息页面。

3.2.3 班级管理ActionForm类

班级信息ClassForm类继承自ActionForm类,首先,声明课程信息主键id、班级名称name、字符组selectFlag等属性,并编写这些属性的setter方法、getter方法。

3.2.4 班级管理DAO类

(1)接口类ClassDAO类。班级信息DAO类的接口类ClassDAO类声明这几种方法:添加班级的addClass()方法、修改班级的modifyClass()方法、批量删除班级的deleteClass()方法、根据Id查询班级的 findClassById()方法、查询全部班级的findAllClasses()方法以及根据条件查询班级的listClass()方法。

(2)实现类ClassDAOImpl类。班级信息DAO类的实现类ClassDAOImpl类实现了接口类ClassDAO类,继承HibernateDaoSupport,实现接口类ClassDAO类声明的几种方法,实现过程与学生信息DAO类的实现类CollegerDAOImpl实现过程类似。

通过上面步骤编写相应的代码后,学生学籍管理系统班级信息修改界面实现图如图3所示。

图3 学生学籍管理系统班级信息修改界面实现图

3.3 系统数据库设计

本系统数据库采用SQL Server 2008,SQL Server是目前较为流行的关系型数据库,其使用方便、安全性高等特点适合本系统的数据库存储。本系统数据库模型包括普通用户、超级用户以及系统管理员等多个实体。系统E-R图设计如图4所示。

图4 系统E-R图

4 结语

本文围绕学生学籍管理系统设计需求分析,利用Struts-Spring-Hibernate集成框架技术,构建MVC三层模式的学生学籍管理系统,从视图层、核心控制层、业务控制层和DAO层等方面进行了系统层次分析,系统数据库设计则从数据表逻辑结构方面进行了阐述,实现了该学生学籍管理系统,主要内容包括功能模块编写思路、系统公共类、系统Hibernate层实现、核心模块实现以及系统配置。该系统为用户提供灵活、方便的操作,使高校的学生学籍管理更加合理化,节约学生学籍管理的成本,提升高校管理效率,并为高校考核学生的综合素质赋予必要的数据支持。

[1]许春,游洪跃,曾雪梅.一种学生信息综合服务平台的设计与实现[J].计算机技术与发展,2011,21(4):179-186.

[2]余华平.基于UML的高校学生工作管理系统设计[J].计算机技术与发展,2010,20(5):179-182.

[3]杨雨,杜国骏,张卫兵.基于MVC的继续教育学院综合教务系统的设计与实现[J].计算机与数字工程,2011,39(6):181-185.

[4]ARUPRATAN S,KRISHNA I V M,ANINDITA D.Measurement of memory usage in J2EE applications [J].Journal of Scientific&Industrial Research,2012,68(9):786-788.

[5]李小平,肖岳峰,宿元.基于J2EE多层架构的Web开发框架研究[J].计算机应用研究,2013,25(5):19-21.

[6]ZHANG Xiaoshuan,CHEN Peijun,ZHAO Ming.Data Expression Methods in Enterprise Application Using J2EE Architecture[J].WSEAS Transactions on Communications,2013,7(4/6):53-54.

[7]罗拥华,邬家炜,李杨.基于SSH的院系信息管理系统的设计与实现[J].计算机与现代化,2011,2011(5):135-137.

[8]张飞,张建.基于Spring与Hibernate的数据库访问技术研究[J].计算机工程与设计,2014,30(7):18-20.

[9]卢军涛,史浩山.基于SSH的Web应用框架技术研究应用[J].微处理机,2014,30(4):32-39.

[10]刘静,刑藏菊,龚凡蕾.基于SSH的高校MBA管理系统设计与实现[J].计算机应用与软件,2011,28(11):26-28.

Design and implementation of the student status management system of college based on SSH

LIANYan-Ping1,2
(1.Department of Mathematics and Computer Science,Wuyi University,Wuyishan 354300,China;2.The Key Laboratory of Cognitive Computingand Intelligent Information Processing of Fujian Education Institutions,Wuyi University,Wuyishan 354300,China)

This paper mainly discusses the design and implementation of the student status management based on SSH,based on the Java language,using SQL Server database design SSH three layer model based on MVC,through the development and application of the system,can accurately on the student management of the specific circumstances of the solution and the master output includes student information input,information data and the accurate query and various data format conversion and other functions,so as to improve the college student management standardization,network and modularity,meet the personalized needs of school educational administration department.

student status management;SSH architecture;MVCthree layer model;network management

G647.33

A

2017-01-11

福建省中青年教师教育科研项目(JA15527);武夷学院高级引进人才科研启动项目(YJ201607)

连雁平(1981-),男,福建仙游人,武夷学院讲师。

1008-0171(2017)05-0054-06

【责任编辑:王桂珍 foshanwgzh@163.com】

猜你喜欢
学籍高校学生框架
框架
高校学籍异动学生管理工作的思考
高校学生党支部建设及作用发挥探索
学籍学历电子注册管理系统在学籍管理中的应用与实现
广义框架的不相交性
高校学生意外伤害事件应对与处理
小议高校学生违纪处分制度
关于原点对称的不规则Gabor框架的构造
一种基于OpenStack的云应用开发框架
教育部要求小学须在新生入学后1个月内为其注册学籍