基于JSP+sqlserver的高校学生考勤管理系统设计与实现(毕业论文+程序源码)

大家好,今天给大家介绍基于JSP+sqlserver的高校学生考勤管理系统设计与实现,文章末尾附有本毕业设计的论文和源码下载地址哦。需要下载开题报告PPT模板及论文答辩PPT模板等的小伙伴,可以进入我的博客主页查看左侧最下面栏目中的自助下载方法哦

文章目录:


  • 基于JSP+sqlserver的高校学生考勤管理系统设计与实现(毕业论文+程序源码)
  • 1、项目简介
  • 2、资源详情
  • 3、关键词
  • 4、毕设简介
  • 5、资源下载


1、项目简介

  1. 本系统主要针对目前高校学生在线请假以及学生上课出勤管理而设计的信息系统。本系统总体上由三大功能模块:请假系统模块、考勤系统模块、后台管理模块组成。系统涉及到高校六大类用户:学生、任课老师、班主任、院系领导、学校领导、系统管理员。
  2. 本高校学生考勤管理系统用JSP+SQL Server 2000开发,开发过程中运用了页面模块化、信息发布的动态生成、静态页面显示等技术开发。本论文重点介绍本系统的请假系统、考勤系统两大功能模块设计,完成学生、任课老师、班主任、院系领导、学校领导五类用户功能的设计与实现。

2、资源详情

项目难度:中等难度
适用场景:相关题目的毕业设计
配套论文字数:22340个字66页
包含内容:全套源码+配整论文


3、关键词


考勤管理;在线请假;JSP


4、毕设简介

提示:以下为毕业论文的简略介绍,项目完整源码及完整毕业论文下载地址见文末。

第1章 问题定义
1.1 引言
问题定义阶段必须回答的关键问题是:“要解决的问题是什么?”, 在此阶段中,主要是弄清本课题需要解决的问题根本所在,以及此课题所需的资源等。

1.2开发背景
目前高校校园信息化逐步完善,高校师生借助校园网有效的提高了办事效率。各大高校针对师生的成绩查询系统、教务管理系统、招生就业系统、BBS、校园网站等系统在各大高校纷纷出现,对全校师生的学习、生活、管理、办公带来了便利。
目前高校学生上课考勤管理都是以任课老师上课点名,记录学生上课出勤情况,学期末根据上课出勤表及作业登记表对学生平时成绩打分,然后把数据上交到各院系。学生请假以传统的写请假条的形式向各自班主任请假,时间长的请假,要班主任、院系领导都批准方能生效。这种的模式在目前高校管理中暴露出了许多弊端:一是学生请假不方便;二是学生请假对任课老师不透明,造成对学生上课出勤误记的情况;三是学生上课出勤表对班主任不透明,班主任很难知道本班学生上课的出勤情况,不便于与学生及时有效的沟通;四是学生对自己整个学期的上课出勤情况没有整体的统计信息。五是院系领导、学校领导更加把握不住学生上课的出勤情况。

1.3问题描述
上述所说高校对学生考勤和请假面临的问题涉及多类用户,系统使用范围是在全校校园网内,由于用户分布广泛,且存在很大差异,如:知识结构的差异、计算机硬件配置的差异、操作系统的差异等。因此本系统设计应当采用典型的B/S(浏览器/服务器)的构架进行设计,操作简单直观,对硬件要求低,最好能实现跨平台。跨平台一是指客户端用户操作的跨平台,二是指服务器端的跨平台,即可以将服务器部署在所有操作平台上。系统应当有很好的扩展性,与当前高校中现有的系统很好集成。

目前随着IT技术的不断创新与发展,新的技术不断推出,各种企业实现信息化的解决方案不断成熟。面向对象程序设计语言的广泛使用,各种成熟关系数据库的不断完善与推出,再加上面向对象的软件开发过程广泛应用,软件开发过程变得越来越容易,开发出的系统变得越来越实用,许多企业使用信息系统后,明显提高了办事效率,带来了很大的经济收入。目前流行的基于B/S结构的解决方案主要有ASP,JSP,PHP等技术。本系统选用JSP技术开发,使用当前流行的SQL Server 数据库管理系统来存储数据,主要解决学生在线请假、在线考勤管理以及后台数据的维护与更新。

第2章 可行性分析
2.1 引言
省略

2.2 目的和意义
开发本系统的目的,就是要解决目前高校中关于学生请假与上课出勤管理中所面临的一系列问题。
开发出高校学生考勤管理系统能有效地提高高校办事效率,解决目前高校学生请假及上课出勤管理问题,实现学生请假及上课出勤信息对任课教师、班主任、院系领导、学校领导透明,使班主任、院系领导及时把握学生的学习情况,及时与学生沟通,提高教学质量。

2.3 可行性分析
省略

第3章 需求分析
3.1 引言
这个阶段的任务仍然不是具体地解决问题,而是准确地确定“为了解决这个问题,目标系统必须做什么”,主要是确定目标系统必须具备哪些功能。

3.2 用户需求描述
用户是系统的最终使用者,开发系统的目的是要用户最终很好的使用系统,最终为用户带来各种便利。本系统要解决高校学在线请假以及上课考勤管理两大问题,通过对高校的实际调查分析,本系统应当包括学生、班主任、任课老师、院系领导、学校领导、系统管理员六类用户,这六类用户对系统的需求简要概括如下:
3.2.1学生用户需求描述
学生对本系统的主要需求是:在线请假以及查看在校期间所有的上课出勤信息。
在线请假需求:学生在网上填写好请假的起止日期,请假原因后,就可以向本学期本班班主任提出请假申请,超过三天的请假,由班主任审批后,再由院系领导审批。在在线请假的全过程当中,学生可以随时查看请假的详细进展情况。
查看出勤信息需求:学生可以查看在校期间所有学期上课出勤的详细信息,如:查看“高等数学”这门课程在整个学期请假、旷课、迟到、早退了多少次,以及具体的时间、任课老师姓名、第几节课等详细信息。
其它需求:查看本人的基本信息,如本人的所属的院系、年级、专业、班级、学号、姓名、性别等,以及修改个人用户密码,查看本班课表安排。

3.2.2任课老师用户需求描述
任课老师对系统的主要需求是:管理所教班级学生的上课出勤信息以及查看所教班级学生的上课出勤信息。
管理学生上课出勤需求:根据学校安排的课表,随着时间的变化,自动列出还没有在网上公布的学生上课出勤信息,系统自动根据学生请假系统,决定学生上课出勤的最终结果。
查看学生出勤信息需求:查看所教班级学生整个学期上出勤统计信息及详细信息。
其它需求:查看上课课表,本人基本信息以及修改个人用户密码。

3.2.3班主任用户需求描述
班主任对本系统的主要需求是:审批本班学生本学期的在线请假以及查看本班学生本学期所有课程的上课出勤信息。
审批学生请假需求:本班学生本学期在线请假申请后,自动提示班主任有等待审批的请假信息,班主任针对请假申请信息进行学生请假审批,以及对请假信息回复。
查看学生上课出勤信息需求:查看本班学生整个学期有关课程的上出勤统计信息及详细信息。
其它需求:查看本班学生的基本信息、修改个人用户密码等。

3.2.4院(系)领导用户需求描述
院系领导对系统的主要需求是:审批本院系学生超过三天的请假以及查看本院系学生上课出勤信息。
审批请假需求:当学生请超过三天的假,经班主任审批同意后,系统自动提交给任何一个最先进入系统的院系领导审批请假,以及针对请假回复。
查看本院系学生出勤信息需求:输入查询条件后,系统根据查询条件列出本院系学生相关的上课出勤信息。
其它需求:查看本院系有关基本信息以及修改个人用户密码等。

3.2.5学校领导用户需求描述
学校领导对系统的主要需求是:查看全校学生上课出勤信息。
查看出勤信息需求:输入查询条件后,系统根据查询条件列出本校学生相关的上课出勤信息。
其它需求:查看有关全校的基本信息以信修改个人用户密码等。

3.2.6系统管理员用户需求描述
系统管理员有系统的最高权限,负责系统所需所有数据的动态同步更新以及维护,根据系统针对各用户的设计,基本功能需求如下:
1、管理学校各院系、年级、专业、班级的添加、删除、修改等。
2、管理每个学期每个班级的课程安排及指定班主任和任课老师。
3、管理系统所有用户。
4、管理全校课表安排。
5、管理全校每学年开学的起止时间。
6、管理系统的请假、考勤信息。

3.3功能需求描述
根据各类用户的需求描述,系统应当具备请假系统、考勤管理系统、后台管理系统这三大主要功能。
请假系统功能需求:通过实际调查分析得出,目前高校中的请假流程是学生若要请假,必须先写好请假条先由本学年班主任审批,超过四天的请假,还要等待院系领导审批通过后才能生效。请假最长时间不能超过1个月,特殊情况除外。
考勤管理功能需求:任课老师通过考勤管理系统,对学生上课出勤信息进行公开,但由于任课老师忙于教学,为了能及时准确无误的对学生出勤情况公开,要求系统能自动提示任课老师对上完课了,但还没公布的出勤信息进行网上公布。
后台管理功能需求:后来管理主要是用来管理系统操作的数据,因为高校每学年的学生都在变化,有新生入学,也有学生毕业。请假系统要借助班主任安排才能完成,考勤管理系统要借助请假系统、班级课表安排才能完成,然而每学年课表都在变化,班主任安排也有在变化,学生也在变化,因此必须要求后台管理系统能根据系统需求,动态的、准确的更新系统数据。

3.4系统开发工具
根据各用户的需求,以及系统各大功能的需求,经过大量的调查分析,针对本高校学生考勤管理系统选择以下开发工具进行开发:
系统结构:B/S (浏览器/服务器)
开发语言:JAVA/JSP
数据库:SQL Server
开发工具:JDK Dreamweaver Jcreator
服务器端容器:Tomcat

3.5相关开发工具简介
3.5.1 B/S(浏览器/服务器)简介
B/S(Browser/Server,浏览器/服务器)模式又称B/S结构。它是随着Internet技术的兴起,对C/S模式应用的扩展。在这种结构下,用户工作界面是通过IE浏览器来实现的。B/S模式最大的好处是运行维护比较简便,能实现不同的人员,从不同的地点,以不同的接入方式(比如LAN, WAN, Internet/Intranet等)访问和操作共同的数据;最大的缺点是对网络环境依赖性太强,由于各种原因引起网络中断都会造成系统瘫痪。

3.5.2 JAVA/JSP简介
JAVA是SUN公司推出的完全面向对象的语言,它有很好的跨平台性、安全性、重用性等特点。
JSP的全称是Java Servlet Pages,它是SUN推出的一种动态网页技术标准。它在传统的静态页面文件(*.html,*htm)中加入Java程序片段和JSP标记,就构成了JSP页面。由Web服务器上的JSP引擎来处理JSP元素,生成调用Bean,并用JDBC访问数据库(或文件),最后以HTML或XML的形式返回浏览器。JSP在Servlet类中编译,编译一次后存入内存,以后再调用时,不用再编译,所以速度很快。

3.6 系统功能划分
根据系统用户的需求,将本系统按功能划分成三大功能模块:请假系统、考勤系统、后台管理模块,涉及到六大类用户:学生、任课教师、班主任、院系领导、学校领导、系统管理员。
1、 请假系统模块
本模块的功能是在线请假的实现及管理,主要涉及三大类用户:学生、班主任及院系领导用户,学生通过此功能模块进行在线请假及查看请假记录信息;班主任在线审批学生请假及查看请假记录信息;院系领导在线审批学生长时间的请假及查看请假记录信息。
2、 考勤系统模块
本模块的功能是学生考勤信息统计的实现、查看及管理,涉及六大类用户中的所有用户。学生在线查看自己所有学年的出勤信息;任课老师在线管理学生出勤信息;班主任、院系领导、学校领导查看不同的范围的学生出勤信息。
3、 后台管理管理
本模块的功能实现整个系统数据的同步更新及维护,只涉及系统管理员用户。系统管理员动态的管理学生信息、课表安排、学年安排等信息,是整个系统实现的基础。

3.7 数据字典

数据词典,既用于描述数据流和数据存储的详细逻辑内容,也可用于描述外部项和处理逻辑的某些数据特性。数据词典把数据的最小组成单位看作数据元素,若干个数据元素组成数据结构。它通过对数据元素和数据结构的定义,来描述数据流和数据存储的逻辑内容。它相当于字典的作用,当用户或软件人员想了解某一数据的含义时,查查字典就可以了。

java考勤系统设计MySQL 学生考勤管理系统设计java_sqlserver


java考勤系统设计MySQL 学生考勤管理系统设计java_sqlserver_02

java考勤系统设计MySQL 学生考勤管理系统设计java_sqlserver_03

3.8 数据流图
数据流程图是结构化系统分析的工具。它既可以表达数据在系统内部的逻辑流向及存储,又可以表达系统的逻辑功能和数据的逻辑变换。数据流程图既能表达现行人工系统的数据流程和逻辑处理功能,也能表达自动化系统的数据流程和逻辑处理功能。

java考勤系统设计MySQL 学生考勤管理系统设计java_sqlserver_04

第4章 总体设计
4.1 引言
经过需求分析阶段的工作,系统必须“做什么”已经清楚了,现在是决定“怎样做”的时候。
4.2 系统布局设计
系统页面采用框架来设计,不同的用户有不同的功能菜单,但都有统一的风格,这给页面的使用和维护都带来了很大的便利,特别是在代码重用方面起了很大作用。本系统各用户的页面设计如图4-1所示:

java考勤系统设计MySQL 学生考勤管理系统设计java_java_05

1.Banner区——可以在此展示系统标识、页面归属等信息。
2.功能菜单区——提供系统可供操作的功能列表。
4.页面主体区——显示页面格式化数据页面主体区显示的内容,将依据页面在系统中的作用而定。
5.Bottom区——可设计为显示系统所有权等信息。

4.3 总体结构图
根据系统功能的要求,高校学生考勤管理系统各个模块之间的层次结构如图4-2所示:

java考勤系统设计MySQL 学生考勤管理系统设计java_数据_06

按用户划分,系统结构图如图4-3所示:

java考勤系统设计MySQL 学生考勤管理系统设计java_java_07

请假系统子功能模块层次结构图如图4-4所示:

java考勤系统设计MySQL 学生考勤管理系统设计java_java考勤系统设计MySQL_08

考勤系统子功能模块的层次结构如图4-5所示:

java考勤系统设计MySQL 学生考勤管理系统设计java_课程设计_09

第5章 详细设计
5.1 引言
省略

5.2 系统功能流程图
1)主功能流程:

java考勤系统设计MySQL 学生考勤管理系统设计java_java考勤系统设计MySQL_10

5.3系统目录结构设计

java考勤系统设计MySQL 学生考勤管理系统设计java_java_11

5.4 数据库设计与实现
5.4.1 实体模型

java考勤系统设计MySQL 学生考勤管理系统设计java_数据_12

java考勤系统设计MySQL 学生考勤管理系统设计java_java_13

5.4.2 E-R模型

java考勤系统设计MySQL 学生考勤管理系统设计java_java_14

java考勤系统设计MySQL 学生考勤管理系统设计java_课程设计_15

5.4.3 数据库的逻辑设计
根据系统功能设计的要求以及功能模块的划分,对于系统数据库,可以列出以下数据项和数据结构:
考勤登记表:课程安排代号、记载时间、上课时间。
学生上课出勤信息表:上课时间代号、上课时间、学号、出勤状态。
请假信息表:请假代号、班级代号、学年代号、学号、请假原因、开始时间、结束时间、请假天数、申请时间、班主任审批状态、班主任审批时间、班主任回复、院系领导审批状态、院系领导代号、院系领导审批时间、院系领导回复

5.4.4 数据库表的创建

根据数据库需求的分析,建立如下3个基本数据表。

表5-1 请假信息表(qingjia)

java考勤系统设计MySQL 学生考勤管理系统设计java_课程设计_16


java考勤系统设计MySQL 学生考勤管理系统设计java_数据_17

5.4.5 数据库的建立
打开SQL Server2000下面的[企业管理器],登录之后,选择[新建数据库]命令,给数据库起名为kaoqin。然后通过设计器创建数据表,刚才已经说明了需要不同的数据表来分管,它们分别是“qingjia”,“kaoqin_record”,“record”等,有关这些数据表的信息见上图。

5.5 前端操作页面设计
5.5.1 系统登陆设计
当不同的用户使用系统时,都要事先进行身份验证。用户在“用户名”处输入系统管理员分配的用户,选择正确的用户类型,最后输入正确密码后方能进行系统,用户名、用户类型、密码任一一个输入有误,系统都将拒绝用户使用此系统,若用户忘记了用户名或密码,请与管理员联系,本系统不支持在线找回密码功能。学生用户的用户名为学生本人的学号,密码也是学号,其它用户的用户名、密码由系统管理员指定。
本系统在设计时,严格考虑好了系统的安全性,不允许用户不经登陆直接使用系统的任何一个网页,用户也不能绕过身份验证,即:假如一个学生用户用正确的用户名和密码进行系统后,就算他知道管理用户或其它用户的某个网页地址,也是不能打开,进行操作的,系统将自动提示没权限的错误信息。

5.5.2 学生用户功能设计
根据学生用户的需求,系统实现了在线请假、查看上课出勤信息、查看个人基本信息这三大主要功能。系统针对学生用户设计如下功能菜单:基本信息、请假系统、考勤信息、查看课表、修改密码、安全退出、帮助。在基本信息功能菜单中,学生可以查看自己的学号、姓名、性别、院系、年级、专业、班级号信息。在请假系统功能菜单中,实现了在线请假申请功能,以及查看等待审批的请假信息、请假成功的请假信息、请假失败的请假信息。在考勤信息菜单下,学生可以查看本学年以及历史学年上课出勤的统计信息及详细信息。在查看课表功能菜单中,学生可以查看当前学期的课表安排,以及历年的课表安排。修改密码功能菜单,学生可以修改自己的密码。本系统还自带帮助文件,方便用户在使用过程中随时查阅。
学生用户的在线请假,在班主任或院系领导还没批假之前可以由学生自行删除,若班主任审批了请假,则学生不能删除申请记录,学生不能重复请假,因此学生请假时应当慎重。
根据学生用户请假的需求,学生三天内的请假(包括三天)只需班主任批准后就可生效,四天(包括四天)以上的请假,必须先由班主任同意,然后学校同意,请假方能生效,超过30天的请假不能在线请假。请假开始时间必须在请假结束时间之前,否则系统自动提示出错信息,且请假时,必须指定请假开始时间,请假结束时间,以及请假原因,请假时不必要指定班主任,系统会自动根据本学期的班级与班主任安排,找到班主任,并将信息自动交给对应班主任进行审批处理,超过四天的请假还将自动交给任何一个院系领导审批处理。系统还约定学生网上请假只能提前一个星期。
请假开始时间与结束时间的约定:请假时间学生可自动选择,也可自己输入日期,但是必须输入正确的日期格式,否则系统将出错,建议学生选择日期还不手动输入,以免出错。假若学生只请一天假,则开始时间与结束时间都选择要请假的那一天,如:一个学生2006年5月30日要请假,则开始时间、结束时间都选择2006-05-30,系统在进行处理时,自动把请假的时间设为从2006-05-30 00:00:00开始,2006-05-30 23:00:00结束。同样,请超过一天的假也是以这种方式处理的。
在请假的详细记录中,有学生请假有关所有详细信息,包括学生请假的申请时间、开始时间、结束时间、天数、原因、审批时间、回复、请假成功与否等所有有关请假的信息,学生可以随时查看请假进展情况。

5.5.3 任课老师用户功能设计
根据任课老师用户需求,系统实现了任课老师在线公布学生上课出勤信息、查看学生考勤信息两大基本功能。系统针任课老师用户设计以下功能菜单:
查看课表、考勤管理、考勤信息、修改密码、安全退出、帮助。在查看课表功能菜单下,任课老师可以查看本学期自己所带课程的上课时间以及所教班级的一些基本信息。在考勤管理功能菜单中,系统比较智能的根据当前日期自动提示当前学年还没登记的学生上课出勤表。在考勤信息功能菜单中,任课老师可以查看已经记录的学生上课出勤信息,既可以查看学生上课出勤统计信息,也可以考勤学生上课出勤统计信息,还可以做适当的修改。
考勤管理功能是任课老师用户最主要的功能,任课老师上完课后,将传统的学生上课出勤情况在网上进行公布,使学生上课出勤信息及时准备对对班主任、院系领导、学校领导透明。根据任课老师用户的需求,系统实现了自动提示任课老师提交数据的功。根据课表安排,将本学期上完课的,还没提交数据的学生出勤情况自动提示任课老师提交数据,实现了智能化管理。比如说一个老师在2006-5-30进入了系统,那么这个老师在本学期,也就是2006-5-30之前上过的课,但还没提交数据出勤登记信息自动显示出来,等待任课老师提交数据,且任课老师在提交数据时,若学生在上课的那天请了假,且请假成功了,那么系统自动将学生出勤记录记为请假,任课老师无法记载学生为旷课等情况。
任课老师在考勤信息当中,可以查看所教过的学生上课出勤的详细信息及统计信息,从而到了学期末,可以方便任课老师根据上课出勤情况对学生平时成绩打分。

5.5.4 班主任用户功能设计
根据班主任用户功能的需求,系统实现了游览班级信息、审批本班学生在线请假、及上课考勤信息三大基本功能。系统针对班主任用户设计如下功能菜单:班级信息、请假系统、考勤信息、修改密码、安全退出、帮助。在班级信息功能菜单中,班主任用户可以查看本班学生的基本信息如:年级、专业、班级、学生学号、姓名、性别。在请假系统功能菜单中,班主任可以审批本班学生的在线请假,以及查看审批学生请假的历史记录,如:同意的请假记录和不同意的请假记录。在考勤信息功能菜单中,班主任用户可以查看本班学生所有课程的上课出勤信息,包括出勤详细信息及出勤统计信息。
班主任用户在整个系统中是学生请假的决策者,学生请假必须经班主任同意后,才能提交给院系领导审批请假。班主任在审批学生请假时,可以对学生的请假返回反馈意见,以对学生说明不同意请假的原因,或向院系领导说明情况的真实性以更好的方便学生请假。班主任另外一大功能是查看本班学生本学期的所有考勤信息,包括详细信息和统计信息,这样班主任可以及时有效的与本班同学沟通,提高办事效率,提高学生的学习成绩。

5.5.5 院系领导用户功能设计
根据院系领导的用户需求,系统实现了查看本院系信息、审批本院系学生请假、查看考勤信息三大基本功能。系统针对院系领导用户设计如下功能菜单:院系信息、请假系统、考勤统计、班主任信息、任课老师信息、班主任安排信息、院系课表、修改密码、安全退出、帮助。在院系信息功能菜单中,院系领导可以查看本院系的专业信息、班级信息、学生信息。在请假系统功能菜单中,院系领导可以审批经班主任同意的长时间请假,并可查看审批请假的历史记录。在考勤统计功能菜单中,院系领导可以查看本院系各班级考勤统计数据、查寻学生请假信息、考勤信息等。另外在班主任信息、任课老师信息中院系领导可以查看本院系班主任、任课老师的一些基本信息。在院系课表中可以查看本院系当前学年或历年课表安排。
院系领导用户的主要功能是查询本院系学生上课的考勤信息及审批学生请假。院系领导可以查询本院系某个班的考勤信息,也可以查询本院系某个人的考勤信息,在查询个人考勤统计信息时,是一个模糊查询,可以根据一个完整学号,唯一的查出一个学生考勤信息,也可输入部分学号、姓名列出所有相关的考勤记录。院系领导还可查看本院系的一些基本信息,如:专业、班级、任课老师、班主任等一些基本信息。

5.5.6 学校领导用户功能设计
根据学样领导用户的功能,本系统实现了查看全校基本信息及学生考勤信息这两在基本功能。针对院系领导用户设计如下功能菜单:学校信息、考勤信息、院系领导信息、班主任信息、任课老师信息、班主任安排信息、全校课表、修改密码、安全退出、帮助。在学校信息功能菜单下,学校领导可以查看有关本校的一些基本信息,包括:院系信息、专业信息、班级信息、学生信息等。在考勤统计功能菜单下,学校领导可以分院系,班级查看学生考勤统计数据也可以查寻学生上课出勤信息。
学校领导用户的功能与院系领导用户的功能基本上相同,只是查看信息的范围不一样,院系领导只能查看本院系的信息,而学校领导可以查看全校学生、任课老师、班主任等所有相关信息。由于与院系领导设计基本上一致,不再重复。

第6章 编码

6.1用户操作页面编码

6.1.1 系统登陆编码

用户登陆时操作页面如图6-1所示:

java考勤系统设计MySQL 学生考勤管理系统设计java_sqlserver_18

部分代号:

chuser.jsp
……
<% 
request.setCharacterEncoding("GBK");
username=request.getParameter("username");
password=request.getParameter("password");
Type=(String)request.getParameter("type");
char userType=Type.charAt(0);
if(username==null || password==null || username.equals("") ||password.equals("")){
       out.println("<center>");
       out.println("<h1>用户名或密码输入非法!请返回重新输入!</h1><br><br>");
       out.println("<a href=javascript:history.back()>返回</a>");
       out.println("</center>");
       return;
    }
switch(userType){
 case '1' : {sql="select * from stu_user where stu_id='"+username;
         sql+="' and stu_password='"+password+"'";
         rs=conn.executeQuery(sql);
         if(rs.next()){
           session.setAttribute("userType",Type);
           session.setAttribute("userName",username);
           session.setMaxInactiveInterval(60*60*24);
           response.sendRedirect("/kaoqin/student/student.jsp");
        }else{
           out.println("<center>");
           out.println("<h1>用户名或密码不正确</h1><br><br>");
           out.println("<a href=javascript:history.back()>返回</a>");
           out.println("</center>");
         }
         conn.close();
        break;
       }
 ………… 
 %>
 各页面身份验证代码:如check_stu.jsp
<% 
    if(session.getAttribute("userType")!=null && !session.getAttribute("userType").equals("")){
       String userType=(String)session.getAttribute("userType");
       if(!userType.equals("1"))
          response.sendRedirect("/kaoqin/public/error_user.jsp");
    }else{
     response.sendRedirect("/kaoqin/public/error_log.jsp");
     }
 %>

只要在所有的学生用户页面中加入上面的代码后,用户必须先登陆后才能打开网页,且不能绕过身份验证。同样的页面对应各用户还有check_class_teacher.jsp等

6.1.2 学生用户功能编码

根据系统详细设计,学生用户操作页面如图6-2所示:

java考勤系统设计MySQL 学生考勤管理系统设计java_java考勤系统设计MySQL_19

请假功能的实现的程序流程图如图6-3所示:

java考勤系统设计MySQL 学生考勤管理系统设计java_课程设计_20

说明:T 表示班主任对请假审批结果。默认值:0
C 表示院系领导对请假审批结果。默认值:0
N 表示学生请假天数。默认值:0
T、C的值为:0、等待审批。 1、同意请假。2、不同意请假。
功能实现部分代码:

package qingjia;
public class QJ_Record{
	public int day_number=0;
	public int class_teacher_status=0;
	public int college_leader_status=0;
	public QJ_Record(int T,int C,int N){
		this.class_teacher_status=T;
		this.college_leader_status=C;
		this.day_number=N;
	}
}
package qingjia;
public class QingJia{
	public int judge(QJ_Record record){       //对请假记录进行判断,返回值为1:请假成功;
	    int T=record.class_teacher_status;    //返回值为0:等审批的请假。返回值为-1:失败的请假
	    int C=record.college_leader_status;
	    int N=record.day_number;
	    int result=0;
	    if(T==0&&C==0)
	       result=0;
	    if(T==2&&C==0)
	       result=-1;
	    if(T==1&&C==0)
	    	if(N>=1&&N<4)
	    	   result=1;
	    if(T==1&&N>=4)
	        if(C==0)
	           result=0;
	        else if(C==1)
	                 result=1;
	             else
	                 result=-1;
	    return result;
	}
}

6.1.3 任课老师用户功能编码
根据任课老师详细设计的要求,设计任课老师操作页面如图6-4所示:

java考勤系统设计MySQL 学生考勤管理系统设计java_java_21

部分代码:
省略

6.1.4 班主任用户功能编码
根据班主任用户的详细设计要求,设计班主任用户操作页面如图6-5所示:

java考勤系统设计MySQL 学生考勤管理系统设计java_java考勤系统设计MySQL_22

部分代码:

……
<% 
format=new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
  String sp_time=format.format(cur_time);
  sql="update qingjia set class_teacher_status='"+qj_sp+"',class_teacher_restore='"+restore+"',class_teacher_sp_time='"+sp_time+"' where id='"+id+"'";
  conn.executeUpdate(sql);
  conn.close();
  response.sendRedirect("qingjia_manager.jsp");
 %>
……

6.1.5 院系领导用户功能编码

根据院系领导用户详细设计的需求,设计院系领导用户操作页面如图6-6所示:

java考勤系统设计MySQL 学生考勤管理系统设计java_数据_23

部分代码:
省略

6.2 数据库连接池编码
6.2.1数据库连接池程序编码
省略

6.2.2 连接池配置文件
server.xml配置文件:(注:针对Tomcat 5.5)
省略

第7章 软件测试
省略

总 结
通过几个月的努力,高校学生考勤管理系统中的两大功能模块:请假系统和考勤系统在指导老师的全心指导下,在同学的积极配合与帮助下,基本功能顺利完成。在数据库的开发方面,我学到了不少关于JSP和SQL Server 2000的知识。开发时遇到了许多的困难,但是通过自己的努力,还有老师同学们的帮助,最终还是迎刃而解了。
这次毕业设计完全是按照软件工程学的方法来进行设计和开发的。在开发过程中,认真调查分析了用户的需求,及时准备了详细的文档资料,这让我在开发过程中少走了许多弯路。本次设计开发的系统较为庞大,涉及的用户较多,数据库设计比较复杂,使我深刻地体会到软件开发是一项集体项目,单靠一个人就想解决所有的问题是不太实际的。在本次毕业设计中,我和同学共同实现了高校学生考勤管理系统的全部功能,很好的锻炼了我的团队协作意识,这对我以后的学习、工作有很大的帮助。

参考文献
参考的资料有以下:
[1] 肖金秀 JSP程序设计教程 北京:冶金工业出版社
[2] 孙晓龙 JSP动态网站技术入门与提高 北京:人民邮电出版社
[3] 杨学瑜 JSP入门与提高 北京:清华大学出版社
[4] 鲁晓东 JSP软件工程案例精解 北京:电子工业出版社
[5] 印旻 Java 语言与面向对象程序设计 北京:清华大学出版社
[6] 皮德常 Java 2简明教程 北京:清华大学出版社
[7] 萨师煊 王珊编著,《数据库系统概论》,高等教育出版社
[8] 张海藩 编著 《软件工程导论》,清华大学出版社
[9] 赛奎春 JSP工程应用与项目实践 北京:机械工业出版社
[10] 汪孝宜 JSP数据库开发实例精粹 北京:电子工业出版社
[11] 魏茂军 JSP案例开发 北京:中国水利水电出版社
[12] 黄明 JSP信息系统设计与开发实例 北京:机械工业出版社
[13] 屈辉立 JSP网站编程教程 北京:北京希望电子出版社
[14] 孙卫琴 Tomcat与Java Web开发技术详解 北京:电子工业出版社
[15] 张桂元 Struts开发入门与项日实践 北京:人民邮电出版社
致 谢
在这段日子里,指导教师,以及身边的同学给了我很多的帮助及耐心的教导。在此,对所有给我支持与帮助的老师与同学衷心的道一声“谢谢”!如果没有你们的帮助,我的课题肯定不能如此顺利迅速的完成。

附 录
附录一:文献资料
原文
J2EE WEB应用架构分析
省略

译文
省略

附录二、系统部署及使用手册
省略


5、资源下载

本项目源码及完整论文如下,有需要的朋友可以点击进行下载。如果链接失效可点击下方卡片扫码自助下载。

序号

毕业设计全套资源(点击下载)

本项目源码

基于JSP+sqlserver的高校学生考勤管理系统设计与实现(源码+文档)_jsp_BS架构_高校学生考勤管理系统.zip