学生在线考勤系统的设计与实现毕业论文.docx
《学生在线考勤系统的设计与实现毕业论文.docx》由会员分享,可在线阅读,更多相关《学生在线考勤系统的设计与实现毕业论文.docx(46页珍藏版)》请在冰豆网上搜索。
![学生在线考勤系统的设计与实现毕业论文.docx](https://file1.bdocx.com/fileroot1/2022-12/13/62fced58-5529-42aa-b5b8-bdc1daf85562/62fced58-5529-42aa-b5b8-bdc1daf855621.gif)
学生在线考勤系统的设计与实现毕业论文
学生在线考勤系统的设计与实现-毕业论文
本科生毕业设计
(申请学士学位)
论文题目学生在线考勤系统的设计与实现
作者姓名*******
所学专业名称计算机科学与技术
指导教师*************
2013年05月20日
学生:
(签字)
学号:
2011220133
论文答辩日期:
2013年06月16日
指导教师:
(签字)
学生在线考勤系统的设计与实现
摘要:
传统的学生考勤模式在目前高校学生管理中暴露出了许多弊端:
如学生请假不方便;学生请假对任课教师不透明;学生对自己的整体出勤情况的统计信息缺乏了解;院系领导、学校领导不能及时掌握学生上课的出勤情况等。
本课题针对上述问题,利用JSP和Mysql设计并实现了学生在线考勤系统。
本系统包含三大功能模块:
请假管理模块、考勤管理模块、后台管理模块。
在系统的实现过程中还综合运用了页面模块化、信息发布的动态生成、静态页面显示等技术。
通过使用本系统,任课教师可以在很短的时间内完成学生的考勤、学生的请假等,并将考勤信息存入数据库,方便以后对学生的评定,又可以节省考勤所耗费的时间,使之能够更好的完成教学任务。
关键词:
考勤管理;在线请假;JSP;Mysql
DesignandImplementationofOnlineManagementSystemofStudentAttendance
Abstract:
Thetraditionalpatternofstudentattendancemanagementincollegehasanumberofdrawbacks:
Itisnotconvenientforstudenttoaskforleave;Theleaverequestsofstudentsarenon-transparentforteachers;Lackofthestatisticalinformationabouttheiroverallattendanceinonesemester;Facultyleaders,andschoolleaderscannotgettheinformationofstudentattendanceintime,andsoon.Toaddresstheseproblems,thisprojectdesignsandimplementstheonlinemanagementsystemofstudentattendance.Thissystemconsistsofthreefunctionalmodules:
themoduleofaskingforleave,checkingmodule,andmanagementmodule.Inaddition,Inthesystemimplementationprocessisalsointegrateduseofthepagemodularity,informationdisseminationdynamicallygenerated,staticpagesdisplaytechnology.Byusingthissystem,classroomteachersinaveryshortperiodoftimetocompletethestudent'sattendance,leaveandotherstudents,andattendanceinformationintoadatabase,tofacilitatefutureassessmentofstudents,theycansavetimeandattendancetime-consuming,sobetterabletocompletethetaskofteaching.
Keywords:
attendancemanagement;onlineleave;JSP;Mysql
1
绪论
1.1系统设计的背景
目前高校对学生的考勤主要是基于纸质的登记方式进行,教师在课堂上对学生考勤,考勤结果记录在表格上,每一次都由学生处和教务处收集教师考勤资料并进行统计,统计的结果送到班主任或院系领导。
整个过程绝大部分都由手工完成,不仅工作量大,容易出错,并且需要一定的时间才能获得结果,班主任和院校领导不能及时获取学生的考勤详情,难以适应新形势下对学生的管理要求。
随着计算机技术的应用,一些高校大学生对学生使用考勤软件进行上课情况的登记,但大多数都是单机版的,只能够在固定的位置来对学生进行考勤,不适合当前高校的管理模式。
随着计算机网络的普及,高校都建立了校园网络,这使得在网络环境下对学生的考勤变成可能。
在线考勤系统主要特点:
远程管理、管理集中、兼容性强。
学生考勤系统是利用现代企业或社区内部已经普遍架设的局域网线路,把考勤系统融入成为局域网甚至是Internet的一部分,并且不需要另外安装客户端,只需要计算机上安装IE浏览器即可操作该系统。
在线考勤系统实现了多种用户类型登陆,除了管理员能够进行人事、考勤、设备、数据的管理和报表查询外,普通成员也可以使用个人编号登陆系统进行个人资料修改和个人考勤情况查询,从而使普通成员能够方便及时的了解自己的考勤情况,减少管理人员的工作量,使考勤工作更加及时、透明。
经过以上分析,本课题决定采用JSP[1]和Mysql开发该系统,并且选择MyEclipse为开发工具进行开发,Tomcat作为系统的测试服务器。
1.2系统设计的主要意义
传统的学生考勤管理暴露了很多的弊端:
如在校学生请假不是很方便;班级学生请假时对任课的教师不够透明;院系领导、学校领导更加不能及时的了解学生的出勤状况等。
采用Web技术[2]开发的学生在线考勤系统不仅能够满足高效管理学生的出勤情况,还能够提供学生在线请假,从而达到利用计算机系统,来提高效率、加快各种办公业务流程处理速度的目的,实现教学管理数字化、流程自动化、操作灵活,而不受地域、时间的约束,真正提高效率。
在这种背景下,设计并实现一款在线学生考勤系统变得十分有意义。
1.3论文的结构
本文第1部分绪论主要说明了系统的设计背景、系统设计的主要意义。
第2部分介绍了本文所用到的相关技术和理论基础。
第3部分主要介绍系统的功能概述和可行性分析。
第4部分主要阐述系统结构设计、总体框架设计和数据库设计的简要说明。
第5部分详细介绍了系统各个功能模块,并简要描述了各个模块的功能。
第6部分系统测试与数据分析,介绍了测试目标、方法以及测试结果。
最后总结了该系统实现的主要功能及其需要进一步改进的地方。
2相关技术和理论基础
2.1JSP简介
JSP的全称是Java Servlet Pages,它是SUN推出的一种动态网页技术标准。
它在传统的静态页面文件(*.html,*htm)中加入Java程序片段和JSP标记,就构成了JSP页面[3]。
由Web服务器上的JSP引擎来处理JSP元素,生成调用Bean,并用JDBC访问数据库(或文件),最后以HTML或XML的形式返回浏览器[4]。
JSP在Servlet类中编译,编译一次后存入内存,以后再调用时,不用再编译,所以速度很快。
此外JSP还具有以下优点:
一次性编写,随处运行,除了系统之外,代码基本不做任何的更改;系统支持多平台;可伸缩性很强大;支持多样化的开发工具; 支持服务器端组件。
2.2Mysql简介
Mysql是一个关系型的数据库管理系统,由瑞典MysqlAB公司开发,目前属于Oracle公司。
Mysql是一种关系数据库管理系统,关系数据库不是将所有的数据都存放在一个大仓库内,而是将数据保存在不同的表中[5],这样不仅增加了速度也提高了灵活性。
Mysql的SQL语言是作为标准化语言来访问数据库的[6]。
Mysql软件采用了双授权政策(本词条“授权政策”),它分为社区版和商业版,由于体积很小、速度较快、总成本低,特别是开源代码这一特点,一般中小型网站的开发都选择Mysql作为网站数据库。
由于其社区版的性能卓越,搭配PHP和Apache可组成良好的开发环境。
2.3MVC简介
MVC(Model-View-Controller)即模型-视图-控制器。
MVC设计模式的思想就是把Web应用[7]程序分为3个核心模块:
模型(Model)、视图(View)、控制器(Controller)[7]。
Model层包括业务逻辑代码与数据库代码;View层包括数据的展示代码,如HTML、CSS样式、JSP标签等;Controller层连接Model层与View层,从Model层获取数据,送到View层显示。
MVC的结构如图2-1所示。
图2-1MVC结构图
通知数据更新
控制器(Controller)
视图(View)
模型(Model)
状态查询
MVC作为一种分层规定、模块化的设计思想,它的优点有以下几方面:
模型可以被重MVC的优点:
(1)低耦合性,视图层和业务层分离,这样就允许更改视图层代码而不用重新编译模型和控制器代码,同样,一个应用的业务流程或者业务规则的改变只需要改动MVC的模型层即可。
因为模型与控制器和视图相分离,所以很容易改变应用程序的数据层和业务规则。
(2)高重用性和可适用性,随着技术的不断进步,现在需要用越来越多的方式来访问应用程序。
MVC模式准许用户使用各种不同风格的视图来访问相同服务器端代码。
例如,用户可以经过电脑也可经过手机来购买某种产品,虽然购买的方式不同,但程序处理订购产品的方式基本一样。
比如,许多的数据可以使用HTML来表示,但是也可能是使用WAP,而这些表示所用到的指令是更改视图层的实现方式,而模型层与控制层并不需要做任何的改变。
(3)比较低的生命周期成本,MVC不同程度的降低了开发和维护用户接口的技术含量。
(4)快速部署,使用MVC模式使开发的时间得到了大大的减少,这使得程序员可以(Java开发人员)集中精力在业务逻辑层上,而界面程序员(HTML和JSP开发人员)可以把精力集中在表现形式上[8]。
(5)可维护性上,分出视图层和业务逻辑层以后也使得WEB应用更容易维护和方便修改。
(6)比较利于软件工程化的管理,由于每一层各司其职,而每一层不同的应用具有某些相似的特征,这就有利于通过工具化、工程化管理程序的代码。
2.4Tomcat简介
Tomcat服务器是一个免费的开放源码的Web应用服务器,属于轻量级别的应用服务器,在中小型系统与并发访问用户并不是很多场合下得到广泛的使用,是程序员开发和调试JSP程序的第一选择[9]。
对于一个新手来说,可以这样说,当一台机器配置好Apache服务器,可以使用它来回应HTML页面的访问请求。
其实Tomcat部分是Apache服务器的一个扩展,但它是独自运行的,所以当启动运行的时候,它实际上是与Apache独立的进程独自运行的。
Tomcat深受大部分程序员的喜爱,因为它在运行时占用很少的系统资源,扩展性较好,支持负载平衡与邮件服务等开发应用系统比较常用的一些功能;而且它仍然在不断的改进和完善中,任何一个感兴趣的程序员都可以更改它或在其中加入新的功能。
2.5系统结构模式
管理信息系统平台结构模式大体上分为4种:
主机终端模式、文件服务器模式、客户机/服务器模式(Clint/Server,简称C/S)、web浏览器/服务器模式(Browser/Server,简称B/S)。
主机终端模式由于硬件选择有限,已被逐步淘汰。
由于文件服务器模式硬件选择上很有限,硬件的投资上又得不到保证,已被逐步淘汰。
文件服务器这种模式仅适合小规模式的局域网,对于多用户,数据量比较大的情况就会引起网络瓶颈,尤其在互联网上不能够满足用户的要求。
因此,现代企业级平台结构模式应主要考虑C/S模式和B/S模式。
(1)C/S模式及其特点
C/S结构,即客户机和服务器结构。
C/S模式主要由客户应用程序、服务器管理程序和中间件三部分组成。
客户应用程序是系统中用户和数据间进行交互的部件。
服务器程序则进行有效地管理系统资源,如管理一个信息数据库,其主要工作是当多个客户并发地请求服务器上的相同资源时,对这些资源进行最优化管理。
中间件主要负责联结客户应用程序和服务器管理程序,协作完成作业,来满足用户查询、管理数据的要求。
主要特点为:
C/S模式将应用和服务分离开,使系统更具有稳定性与灵活性;C/S模式配备的是点对点的结构模式,适用于局域网,有很可靠的安全性;客户端实现和服务器端直接连接,没有中间的环节,因此响应速度较快;在C/S模式中,作为客户机的计算机需要安装相应的客户机程序,一旦软件升级,每一台客户机都需要安装客户机程序,系统升级和维护起来较为复杂。
(2)B/S模式及其特点
B/S模式即浏览器/服务器结构模式,是基于Internet/Intranet的结构模式,分三层,第一层是表示层,用户通过在浏览器完成与在后台的交互及最终的查询结果输出功能。
第二层是具有ODBC接口的WEB服务器,属功能层,主要是利用服务器来完成客户的应用功能。
第三层是数据层,根据客户相应请求进行独立地各种运算。
即前台浏览器,中间Web服务器,后台数据库的方式。
此种结构由用户在本地客户端Web页面发出请求到WebSever,再由WebSever向数据库发出相应请求,而最后中间件服务器接受来自数据库服务器的应答响应后,最终以页面的形式返回到客户端。
这样一来就实现了客户端不需要直接和数据库服务器发生关系,保证了传输数据的安全性。
主要特点为:
用户使用方便,其在逻辑上采用了3层结构,它在前台Browse和后台Server之间增加了一层WebServer层,所有的应用程序模块都安装在它上面,在Browse上只需安装一个通用的浏览器软件,因此,这种模式简化了客户端,使用户的操作更加方便;系统开发、维护、升级方便。
当服务器的应用程序升级的时候,只需要在服务器上升级应用程序即可,而用户计算机上的浏览器软件不需要做任何的修改,系统开发与升级维护相对方便;在B/S模式下,用户通过浏览器访问,系统的开放性好,结构容易扩展;由于Web的平台无关性,使得B/S模式的结构可以容易的进行扩展,也可以根据发展的需要,对系统随时进行扩展,降低了系统的开发和维护的开销。
鉴于B/S相对于C/S的先进性,在某些方面相对于C/S的巨大改进,使B/S成了管理信息系统平台的首选。
各软件公司纷纷推出自己的Internet方案,基于Web的财务系统、基于Web的ERP。
一些企业已经领先一步开始使用它,并且收到了一定的成效。
所以,开发基于B/S模式的学生有其重要的现实意义。
3系统需求分析
3.1系统功能概述
利用程序设计、Web制作技术、数据库开发等技术设计和实现一个学生在线考勤系统。
大概分为三大功能模块:
请假系统模块、考勤系统模块、后台管理模块组成;有学生、任课教师、系统管理员三大类用户。
请假系统模块:
本模块的功能是在线请假的实现及管理,主要涉及两类用户:
学生和任课教师,学生通过此功能模块进行在线请假及查看请假记录信息;任课教师在线审批学生请假及查看请假记录信息。
考勤系统模块:
此模块实现学生考勤信息查询(包括按学院、按专业、按班级、按考勤人、按时间段等查询学生出勤情况)、查看及管理,涉及到所有的用户。
任课教师可以在线管理所有学生的出勤情况;班主任、院领导查看不同范围的学生出勤情况。
后台管理模块:
此模块实现整个系统数据的同步更新以及维护,只涉及到系统管理员这个用户,系统管理员可以动态的对相应用户进行管理、安排课程、安排学年信息等,是整个系统实现的基础。
3.2可行性分析
3.2.1开发的必要性
针对目前各大高校面积大、学院、专业、学生数量多,为学校的学生考勤工作开发一套能够进行实时处理的信息管理系统是十分有必要的。
具体体现如下:
(1)考勤不够全面,一个学校班级、学生人数众多。
学生会安排的考勤工作人员及其有限,任课教师也不可能每节课都点名,所以高校的学生考勤无法全面地进行。
(2)考勤数据不够准确且点名考勤制耗费了教师和学生大量的时间。
(3)临时有事需要请假的学生得提前找到任课教师、班主任等,签字请假,这就使得请假管理的执行上显得效率很低。
(4)考勤资料的共享程度较低,教师手里掌握的考勤记录经常会与系学生会、学校教务处的考勤记录有出入。
有了上述原因,对滁州学院学生考勤工作急需一套管理信息系统,而科学管理的必要性也使得这套系统的开发势在必行。
3.2.2开发的可行性
经济可行性:
本系统使用B/S架构设计,使用市场上流行的动态网页技术[10],开发简单,使用又方便,不需要耗费很多的人力和物力就能较快的开发出来,系统的部署对软硬件要求又不高,所以从经济上讲是可行的。
技术可行性:
高校学生在线考勤系统在当前的高校中使用还是很普遍,但也有很多类似的成功案例:
如排课管理系统、教务管理系统等。
本系统采用JSP,html标识语言、JavaScript脚本语言、和Mysql数据库等技术进行开发。
JSP是一种安全稳定的动态网页技术,目前国内各银行信息系统,ERP系统,企业的电子商务系统等基本上都用JSP开发。
Mysql数据库的技术是基于客户/服务器结构的数据库管理系统,每个用户可以通过使用客户系统从服务器进行检索信息并可以本地操作,服务器就关注数据库的进程,而此时的客户则要关注信息的表示。
为了让客户端可以从服务器访问数据,则服务器必须满足以下两个重要特征:
对数据库里的数据可以提供单点访问;将操作和处理在服务器间和客户端进行分配。
Mysql使用Transact-SQL语言进行实现、维护与访问数据库,Transact-SQL是SQL(StructuredQueryLanguage)的一个子集标准[11]。
Mysql有很多种实用程序允许用户对它的服务访问,用户能够用这些实用程序对Mysql进行本地或者远程管理。
从以上的分析可知,高校学生在线考勤系统的解决方案它无论在技术,经济上都是可行的[12]。
4系统设计
4.1总体框架设计
4.1.1系统布局设计
系统页面采用框架来设计,不同的用户有不同的功能菜单,但都有统一的风格,这给页面的使用和维护都带来了很大的便利,特别是在代码重用方面起了很大作用。
本系统的页面设计如图4-1所示。
图4-1系统布局图
(1)标题显示区
可以在此展示登录用户、年月日、系统标题等信息。
(2)功能菜单区
提供系统可供操作的功能列表。
(3)页面主体区
根据用户操作显示系统相应的页面。
(4)状态信息区
显示本系统所有权等信息。
4.1.2总体结构图
根据系统需求分析,设计出学生在线考勤系统的总体结构。
本系统主要涉及到三类功能模块:
考勤管理模块主要用于任课教师对学生的出勤情况进行记录、管理等;请假管理模块主要用于学生在线请假、老师审批等;后台管理模块主要用于系统管理员对整个系统数据的同步更新以及维护等。
学生在线考勤系统各个模块之间的层次结构如图4-2所示。
图4-2系统层次结构示意图
4.1.3程序流程图
用户在输入帐号、密码登录系统前需要与后台数据库核对用户信息是否合法,登录成功后,系统会根据用户的类型判断该用户允许使用本系统的哪些功能,进而展示属于该用户使用的系统功能菜单界面。
学生在线考勤系统的系统运行流程图如图4-3所示。
图4-3程序流程图
图4-3程序流程图
4.2数据库设计
4.2.1数据库需求分析
数据库设计是指对于一个给定的应用环境,构造设计优化的数据库逻辑模式和物理结构,并据此建立数据库以及应用环境,使之能够有效地存储和管理数据,满足各种用户的应用需求,包括信息管理要求和数据操作要求。
设计这个系统的主要目的就是实现学生在线考勤管理的规范化。
数据库的需求分析阶段是整个数据库设计过程中的基础,也是耗时就多,最困难的一步。
需求分析的任务就是通过详细调查现实世界要处理的对象,充分了解原系统工作概况,明确用户的各种需求,然后在此基础上确定新系统的功能。
这个阶段的工作成果主要包含以下三个方面的内容。
(1)数据项
每种具体数据的名称、意义、类型、取值范围以及与其他数据项之间的逻辑关系。
(2)数据集
若干数据项的有逻辑关联的集合,包括名称、意义和组成数据集的数据项。
(3)数据流
应用系统运行时,数据是怎么输入、处理和输出。
学生考勤管理系统要实现考勤管理、请假管理、后台管理三大子系统,需要了解学生用户、任课教师用户、管理员用户等三类用户的功能模块。
然后,据此分析出数据需求。
要实现以上所述功能,系统采用的数据库需具备以下的基本存储信息:
学生信息表:
学生姓名、学号、专业、班级、联系电话等。
学生考勤表:
学生姓名、学院、专业、班级、出勤情况、考勤人等。
我的请假表:
请假人、请假时间、请假类型、请假理由、请假状态等。
课程表:
课程名称、专业、任课教师、学时、学分等。
学年安排表:
学年、计划安排、详细信息等。
4.2.2数据库概念结构设计
根据数据库的需求分析,设计具体数据库[13]的主要实体模型图、E-R模型图,如下:
(1)学生请假信息的实体模型图如图4-4所示。
图4-4请假记录属性模型
(2)教师考勤信息的实体模型图如图4-5所示。
图4-5考勤记录属性模型
(3)学生请假信息的E-R模型如图4-6所示。
图4-6学生-请假记录E-R模型
(4)学生出勤信息的E-R模型如图4-7所示。
图4-7学生—出勤记录E-R模型
4.2.3数据库逻辑设计
根据数据库的需求分析,设计具体数据库逻辑结构[14],包含的表如下:
(1)用户管理表:
这张表用来保存用户管理员的基本信息,表结构如表4-1所示。
表4-1用户管理表
字段中文名称
字段英文名称
字段长度
字段类型
ID
Id
11
int
用户帐号
userAcct
18
varchar
用户密码
userPass
18
varchar
删除标识(0:
正常;1:
删除)
deleteFlag
1
int
用户名称
userName
20
varchar
用户类型(1:
系统管理员;2:
普通用户)
userType
1
int
状态(0:
未审批;1:
审批通过)
status
1
int
(2)学生信息表:
这张表用来保存学生的基本信息。
学生信息表如表4-2所示。
表4-2学生信息表
字段中文名称
字段英文名称
字段长度
字段类型
ID
id
11
int
学生姓名
xueshengxingming
50
varchar
学号
xuehao
50
varchar
专业
zhuanye
50
varchar
班级
banji
50
varchar
联系电话
lianxidianhua
50
varchar
操作人ID
operatorId
20
varchar
操作时间
itime
20
varchar
备注
detail
1000
varchar
删除标识(0:
正常;1