课堂考勤管理系统的设计 优秀论文 定稿

上传人:gui****hi 文档编号:78620603 上传时间:2022-04-22 格式:DOC 页数:29 大小:135KB
返回 下载 相关 举报
课堂考勤管理系统的设计 优秀论文 定稿_第1页
第1页 / 共29页
课堂考勤管理系统的设计 优秀论文 定稿_第2页
第2页 / 共29页
课堂考勤管理系统的设计 优秀论文 定稿_第3页
第3页 / 共29页
点击查看更多>>
资源描述
2012届本科生毕业论文学 号:080501050102 成 绩: 课堂考勤管理系统的设计 院 部: 计算机科学与技术学院 专 业:计算机科学与技术 姓 名: 王 倩 指导教师: 陈 强二?一二年四月 毕业论文诚信声明 本人郑重声明: 所呈交的毕业论文课堂考勤管理系统的设计是本人在指导老师的指导下,独立研究、写作的成果。论文中所引用是他人的无论以何种方式发布的文字、研究成果,均在论文中以明确方式标明。 本声明的法律结果由本人独自承担。 毕业论文作者签名: 王 倩 2012 年 月 日摘 要 本系统采用JAVA技术,以Tomcat为JAVA服务器、Microsoft SQL Server 2000 为数据库系统,建立了一个基于B/S模式的三层体系的课堂考勤管理网站系统,以加强课堂考勤管理,提高课堂教学质量。 本系统基于JAVA技术建立的课堂考勤管理毕业设计,其目标是完成高校教学中课堂考勤管理。系统主要包括未登录用户模块、学生模块、教师模块、教务员模块四个功能模块。其中未登录用户模块实现了信息查找等功能;学生模块实现了学生信息修改、考勤查看等功能;教师模块实现了教师修改信息、按教学班考勤等功能;教务员模块主要实现了密码修改,对学生、教师、课程、学生选课等。【关键词】JAVA;数据库;B/S模式;考勤Abstract The system using the JAVA techonlogy,taking Tomcat as the JAVA server,Microsoft SQL Server 2000 as the database system,has established the website system of classroom checking attendance manages which is based on B/S pattern.In order to enhance classroom attendance management, improve the quality of classroom teachingThe classroom checking attendance management system is based on JAVA technology.Its goal is completing the classroom checking attendance in universities.The system mainly includes four modules.They are the user not registered module,student module,teacher module and Educational administration personnel module. The system mainly includes four modules.They are the user not registered module,student module,teacher module and Educational administration personnel module.In which has not registered the user module has much functions,such as searching information and so on;The student module realized functions such as modifying student information and observing the results of checking attendance;The teacher module realized the teacher to revise the information and check attendance according to the class;The last module mainly realized the password to revise and the information of the student,the teacher,the course to manage.【关键词】JAVA;database;B/Spattern;checking attendant目 录绪论 1.1开发背景 11.1.1 课题研究内容和意义2 1.2可执行性分析21.3技术分析31.3.1B/S模式31.3.2JAVA技术 41.3.36HTML和CSS 61.3.4JavaScript技术 7系统设计2.1系统需求分析92.1.1 需求概述9 2.1.2 系统设计目标92.1.3 系统功能需求10 2.1.4 系统设计思想112.2 系统环境配置 11数据库设计与实现 3.1 Microsoft SQL Server2000 简介 13 3.2 数据库需求分析133.3 数据库逻辑设计17 3.4 数据库结构创建 173.4.1 建立数据表18 3.4.2 数据表间关系22系统详细设计 4.1 用户登录23 4.1.1 不访问服务JavaScript器函数验证 254.1.2 登陆服务器访问验证26 4.2 学生功能模块设计28 4.2.1 学生信息修改28 4.2.2 考勤查看30 4.3 教师功能模块设计304.4 教务员功能模块设计33 4.4.1 学生、教师、课程、学生选课管理33第5章 结 论 35致 谢 36参考文献 37附 录 39 绪 论 Internet是目前世界上最大的计算机互联网络,他遍布全球,将世界各地各种规模的网络连接成一个整体。作为internet上一种先进的,易于被人们所接受的信息检索手段。Java是由Sun Microsystems公司于1995年5月推出的Java程序设计语言(以下简称Java语言)和Java平台的总称。用Java实现的HotJava浏览器(支持Java applet)显示了Java的魅力:跨平台、动感的Web、Internet计算。从此,Java被广泛接受并推动了Web的迅速发展,常用的浏览器现在均支持Java applet。另一方面,Java技术也不断更新。 1.1开发背景 目前社会上信息管理系统发展飞快,各个学校都引入了信息管理软件来管理自己日益增长的各种信息,考勤管理系统也是有了很大的发展,商业化得学校信息管理软件也不少。而目前学校的这项工作还处于半手工福安里阶段,信息资源的的数字化程度低,大部分历史积累的数据,尚未数字化。不利于科学福安里和决策。 高校学生上课考勤管理都是以任课老师上课点名,记录学生上课出勤情况,学期末根据上课出勤表及作业登记表对学生平时成绩打分,然后把数据上交到各院系。学生请假以传统的写请假条的形式向各自班主任请假,时间长的请假,要班主任、院系领导都批准方能生效。这种的模式在目前高校管理中暴露出了许多弊端:一是学生请假不方便;二是学生请假对任课老师不透明,造成对学生上课出勤误记的情况;三是学生上课出勤表对班主任不透明,班主任很难知道本班学生上课的出勤情况,不便于与学生及时有效的沟通;四是学生对自己整个学期的上课出勤情况没有整体的统计信息。五是院系领导、学校领导更加把握不住学生上课的出勤情况。1.1.1 课题研究内容和意义 课堂是学生学习的主要场所,课堂学习是学生获取知识、培养能力、提高素质的主渠道。抓好课堂考勤是创造良好学习氛围,形成良好班风学风的必要条件。而在当前各高校学生上课较以前分散,课堂、教室的流动性使得班级概念相对弱化,班主任、辅导员、班干部对学生的上课情况的了解和掌握较弱,同时部分教师淡化课堂考勤,导致一些学生利用课堂考勤监控不严而长期旷课。课堂教学的新特点使传统的课堂考勤制度遇到严峻的挑战。作为计算机应用的一部分,使用计算机对学生课堂考勤信息进行管理,据有以下优点:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高效率,也是学校科学化、正规化管理的重要条件。 因此,开发这样一套管理软件成为很必要的事情。 1.2可执行性分析 (1)技术可行性 本系统仅需要一台装有Microsoft SQL Server 2000的计算机即可,对机器本身没有太高的要求,一般当前学校或个人电脑完全可满足要求。对于软件技术要求,现在的程序设计语言已非常成熟,采用B/S模式,利用JAVA技术,使用SQL Server 2000 中提供的数据库。所以在技术上完全可行。 经济可行性 由于本系统是高校课堂考勤管理的系统,只要电脑联入互联网,即可使用系统,系统成本主要集中在系统开发上,当系统投入运行后可以为学校节约大量的人力,物力,提高学校的考勤效率。所带来的效益远远大于系统软件的开发成本,在经济上完全可行。 操作可行性 界面设计时充分考虑管理人员的习惯,使得操作简单;数据录入迅速、规范、可靠;统计准确;制表灵活;适应力强;容易扩充。所以系统操作上完全可行。1.3技术分析 本系统结构为B/S模式,采用JAVA技术。网页制作技术采用HTML,采用JavaScript和CSS技术,使得网页操作方便、快捷,而且界面美观、个性。1.3.1B/S模式 B/S(Browser/Server,浏览器/服务器)模式又称B/S结构。它是随着Internet技术的兴起,对C/S模式应用的扩展。在这种结构下,用户工作界面是通过IE浏览器来实现的。B/S模式最大的好处是运行维护比较简便,能实现不同的人员,从不同的地点,以不同的接入方式(比如LAN, WAN, Internet/Intranet等)访问和操作共同的数据;最大的缺点是对企业外网环境依赖性太强,由于各种原因引起企业外网中断都会造成系统瘫痪。 随着Internet和的流行,以往的主机/终端和C/S都无法满足当前的全球网络开放、互连、信息随处可见和信息共享的新要求,于是就出现了B/S型模式,即浏览器/服务器结构。B/S模式最大特点是:用户可以通过浏览器去访问Internet上的文本、数据、图像、动画、视频点播和声音信息,这些信息都是由许许多多的Web服务器产生的,而每一个Web服务器又可以通过各种方式与数据库服务器连接,大量的数据实际存放在数据库服务器中。客户端除了浏览器,一般无须任何用户程序,只需从Web服务器上下载程序到本地来执行,在下载过程中若遇到与数据库有关的指令,由Web服务器交给数据库服务器来解释执行,并返回给Web服务器,Web服务器又返回给用户。在这种结构中,将许许多多的网连接到一块,形成一个巨大的网,即全球网。而各个企业可以在此结构的基础上建立自己的Internet。 B/S结构的优点: 具有分布性特点,可以随时随地进行查询、浏览等业务处理。 业务扩展简单方便,通过增加网页即可增加服务器功能。 维护简单方便,只需要改变网页,即可实现所有用户的同步更新。 开发简单,共享性强 1.3.2JAVA技术Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由Sun Microsystems公司于1995年5月推出的Java程序设计语言和Java平台(即JavaSE, JavaEE, JavaME)的总称。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。 Java 编程语言的风格十分接近C、C+ 语言。Java是一个纯的面向对象的程序设计语言,它继承了 C+ 语言面向对象技术的核心,Java舍弃了C +语言中容易引起错误的指针(以引用取代)、运算符重载(operator overloading)、多重继承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的对象所占据的内存空间,使得程序员不用再为内存管理而担忧。在 Java SE 1.5 版本中,Java 又引入了泛型编程(Generic Programming)、类型安全的枚举、不定长参数和自动装/拆箱等语言特性。 Java 不同于一般的编译执行计算机语言和解释执行计算机语言。它首先将源代码编译成二进制字节码bytecode,然后依赖各种不同平台上的虚拟机来解释执行字节码,从而实现了“一次编译、到处执行”的跨平台特性。不过,每次的编译执行需要消耗一定的时间,这同时也在一定程度上降低了 Java 程序的运行效率。 Java的主要特性: (1)Java语言是简单的。Java语言的语法与C语言和C+语言很接近,使得大多数程序员很容易学习和使用Java。另一方面,Java丢弃了C+ 中很少使用的、很难理解的、令人迷惑的那些特性,如操作符重载、多继承、自动的强制类型转换。特别地,Java语言不使用指针,并提供了自动的废料收集,使得程序员不必为内存管理而担忧。 (2)Java语言是一个面向对象的。Java语言提供类、接口和继承等原语,为了简单起见,只支持类之间的单继承,但支持接口之间的多继承,并支持类与接口之间的实现机制(关键字为implements)。Java语言全面支持动态绑定,而C+ 语言只对虚函数使用动态绑定。总之,Java语言是一个纯的面向对象程序设计语言。 (3)Java语言是分布式的。Java语言支持Internet应用的开发,在基本的Java应用编程接口中有一个网络应用编程接口(java net),它提供了用于网络应用编程的类库,包括URL、URLConnection、Socket、ServerSocket等。Java的RMI远程方法激活机制也是开发分布式应用的重要手段。 (4)Java语言是健壮的。Java的强类型机制、异常处理、废料的自动收集等是Java程序健壮性的重要保证。对指针的丢弃是Java的明智选择。Java的安全检查机制使得Java更具健壮性。 (5)Java语言是安全的。Java通常被用在网络环境中,为此,Java提供了一个安全机制以防恶意代码的攻击。除了Java语言具有的许多安全特性以外,Java对通过网络下载的类具有一个安全防范机制(类ClassLoader),如分配不同的名字空间以防替代本地的同名类、字节代码检查,并提供安全管理机制(类SecurityManager)让Java应用设置安全哨兵。 (6)Java语言是体系结构中立的。Java程序(后缀为java的文件)在Java平台上被编译为体系结构中立的字节码格式(后缀为class的文件), 然后可以在实现这个Java平台的任何系统中运行。这种途径适合于异构的网络环境和软件的分发。 (7)Java语言是可移植的。这种可移植性来源于体系结构中立性,另外,Java还严格规定了各个基本数据类型的长度。Java系统本身也具有很强的可移植性,Java编译器是用Java实现的,Java的运行环境是用ANSI C实现的。 (8)Java语言是解释型的。如前所述,Java程序在Java平台上被编译为字节码格式,然后可以在实现这个Java平台的任何系统中运行。在运行时,Java平台中的Java解释器对这些字节码进行解释执行,执行过程中需要的类在联接阶段被载入到运行环境中。 (9)Java是高性能的。与那些解释型的高级脚本语言相比,Java的确是高性能的。事实上,Java的运行速度随着JITJust-In-Time编译器技术的发展越来越接近于C+。 (10)Java语言是多线程的。在Java语言中,线程是一种特殊的对象,它必须由Thread类或其子(孙)类来创建。通常有两种方法来创建线程:其一,使用型构为ThreadRunnable 的构造子将一个实现了Runnable接口的对象包装成一个线程,其二,从Thread类派生出子类并重写run方法,使用该子类创建的对象即为线程。值得注意的是Thread类已经实现了Runnable接口,因此,任何一个线程均有它的run方法,而run方法中包含了线程所要运行的代码。线程的活动由一组方法来控制。Java语言支持多个线程的同时执行,并提供多线程之间的同步机制(关键字为synchronized)。 (11)Java语言是动态的。Java语言的设计目标之一是适应于动态变化的环境。Java程序需要的类能够动态地被载入到运行环境,也可以通过网络来载入所需要的类。这也有利于软件的升级。另外,Java中的类有一个运行时刻的表示,能进行运行时刻的类型检查。 Java语言的优良特性使得Java应用具有无比的健壮性和可靠性,这也减少了应用系统的维护费用。Java对对象技术的全面支持和Java平台内嵌的API能缩短应用系统的开发时间并降低成本。Java的编译一次,到处可运行的特性使得它能够提供一个随处可用的开放结构和在多平台之间传递信息的低成本方式。1.3.3HTML和CSS 文本标记语言,即HTML(Hypertext Markup Language),是用于描述网页文档的一种标记语言。 超文本标记语言在上的一个超媒体文档称之为一个页面(page)。作为一个组织或个人在万维网上放置开始点的页面称为主页Homepage,或首页,主页中通常包括有指向其他相关页面或其他节点的指针(超级链接)。在逻辑上将视为一个整体的一系列页面的有机集合称为网站(Website或Site)。 HTML是一种规范,一种标准,它通过标记符号来标记要显示的网页中的各个部分。网页文件本身是一种文本文件,通过在文本文件中添加标记符,可以告诉浏览器如何显示其中的内容(如:文字如何处理,画面如何安排,图片如何显示等)。浏览器按顺序阅读网页文件,然后根据标记符解释和显示其标记的内容,对书写出错的标记将不指出其错误,且不停止其解释执行过程,编制者只能通过显示效果来分析出错原因和出错部位。但需要注意的是,对于不同的浏览器,对同一标记符可能会有不完全相同的解释,因而可能会有不同的显示效果。 HTML之所以称为超文本标记语言,是因为文本中包含了所谓“超级链接”点。所谓超级链接,就是一种URL指针,通过激活(点击)它,可使浏览器方便地获取新的网页。这也是HTML获得广泛应用的最重要的原因之一。 HTML文档制作不是很复杂,且功能强大,支持不同数据格式的文件镶入,这也是盛行的原因之一,其主要特点如下: 简易性,HTML版本升级采用超集方式,从而更加灵活方便。 可扩展性,HTML语言的广泛应用带来了加强功能,增加标识符等要求,HTML采取子类元素的方式,为系统扩展带来保证。 平台无关性。虽然PC机大行其道,但使用MAC等其他机器的大有人在,HTML可以使用在广泛的平台上,这也是盛行的另一个原因。 CSS(Cascading Style Sheet)可译为“层叠样式表”或“级联样式表”,它定义如何显示 HTML 元素,用于控制Web页面的外观。通过使用CSS实现页面的内容与表现形式分离,极大提高了工作效率 。样式存储在样式表中,通常放在部分或存储在外部CSS文件中。 层叠式表的特点: (1)便于页面的修改。 (2)便于页面风格的统一。 (3)减少网页的体积。1.3.4JavaScript技术 Javascript是一种由Netscape的LiveScript发展而来的原型化继承的面向对象的动态类型的区分大小写的客户端脚本语言,主要目的是为了解决服务器端语言,比如Perl,遗留的速度问题,为客户提供更流畅的浏览效果。当时服务端需要对数据进行验证,由于网络速度相当缓慢,只有28.8kbps,验证步骤浪费的时间太多。于是Netscape的浏览器Navigator加入了Javascript,提供了数据验证的基本功能。 JavaScript是一种基于对象和事件驱动并具有相对安全性的客户端脚本语言。同时也是一种广泛用于客户端Web开发的脚本语言,常用来给HTML网页添加动态功能,比如响应用户的各种操作。它最初由网景公司的Brendan Eich设计,是一种动态、弱类型、基于原型的语言,内置支持类。JavaScript是Sun公司的注册商标。1 Ecma国际以JavaScript为基础制定了ECMAScript标准。JavaScript也可以用于其他场合,如服务器端编程。完整的JavaScript实现包含三个部分:ECMAScript,文档对象模型,字节顺序记号。 Netscape公司在最初将其脚本语言命名为LiveScript来Netscape在与Sun合作之后将其改名为JavaScript。JavaScript最初受Java启发而开始设计的,目的之一就是“看上去像Java”2,因此语法上有类似之处,一些名称和命名规范也借自Java。但JavaScript的主要设计原则源自Self和Scheme3.JavaScript与Java名称上的近似,是当时网景为了营销考虑与Sun公司达成协议的结果。为了取得技术优势,微软推出了JScript来迎战JavaScript的脚本语言。为了互用性,Ecma国际(前身为欧洲计算机制造商协会)创建了ECMA-262标准(ECMAScript)。现在两者都属于ECMAScript的实现。尽管JavaScript作为给非程序人员的脚本语言,而非作为给程序人员的编程语言来推广和宣传,但是JavaScript具有非常丰富的特性。 系统设计 本章主要从系统的目标设计、功能设计和设计思想等几个方面阐述了系统的需求分析,最后通过需求分析给出了系统功能模块设计与开发的环境。 2.1系统需求分析 系统需求分析是系统分析和设计的一个重要阶段,他对系统提出了完整、准确、清晰、具体的要求。 2.1.1 需求概述 系统主要完成高校教学中的课堂考勤管理功能。教师对自己授课的教学班学生进行考勤,学生可以查看自己的考勤记录,教务员可以管理系统中的所有数据。 (1)运行环境: 系统基本运行环境为Windows环境,安装Tomcat(Windows XP/2000),安装Microsoft SQL Server 2000,配置好ODBC,即可在浏览器下可以浏览。(2)条件与限制:由于系统较小,且在windows系统下开发,故在windows环境下基本没有什么限制,只要运行环境配置正确即可。2.1.2 系统设计目标本系统主要完成以下功能:(1)未登录用户模块实现了信息查找等功能;(2)学生模块实现了学生信息修改、考勤查看等功能;(3)教师模块实现了教师修改信息、按教学班考勤等功能;(4)教务员模块主要实现了密码修改,对学生、教师、课程、学生选课等。2.1.3 系统功能需求 根据系统设计目标,本系统有四种角色:未登录用户、学生、教师、教务员。每个角色对应一个模块,因此从功能上可以分为对应的四个模块,每个模块实现对应角色的功能。具体功能模块图如图2-1示。 课堂考勤管理系统 未登录用户教务员模块学生模块教师模块 密码修改教师信息管理课程信息管理学生信息管理选课信息管理信息查找学生信息修改考勤查看教师修改信息考勤图2-1 系统功能模块图2.1.4 系统设计思想 毕业设计采用JAVA技术,以Tomcat为JAVA服务器、Microsoft SQL Server 2000 为数据库系统毕业设计,建立了一个基于B/S模式的三层体系的课堂考勤管理网站毕业设计。 B/S本系统应用主要针对大学生校园的教学设计,考虑到大学生学生人数比较多,上课时间地点非常分散,而B/S模式最大的好处是运行维护比较简便,能实现不同的人员,从不同的地点,以不同的接入方式访问和操作共同的数据,因此系统更适合用B/S模式构建,而不去考虑它对校园外部网络环境依赖性太强的缺点,因为大学校园网络条件很好,即使偶有网络中断,考勤也不是非常重要,考勤也可暂停。另外从投入成本比较、硬件投资保护比较、数据安全性比较、数据一致性比较、服务响应及时性比较、网络应用限制比较等方面也很容易得出就此系统而言B/S模式比较优越。 选用java的原因: (1)类型安全。 泛型的主要目标是提高 Java 程序的类型安全。通过知道使用泛型定义的变量的类型限制,编译器可以在一个高得多的程度上验证类型假设。没有泛型,这些假设就只存在于程序员的头脑中(或者如果幸运的话,还存在于代码注释中)。(2)消除强制类型转换。 泛型的一个附带好处是,消除源代码中的许多强制类型转换。这使得代码更加可读,并且减少了出错机会。(3)潜在的性能收益。 泛型为较大的优化带来可能。在泛型的初始实现中,编译器将强制类型转换(没有泛型的话,程序员会指定这些强制类型转换)插入生成的字节码中。但是更多类型信息可用于编译器这一事实,为未来版本的 JVM 的优化带来可能。由于泛型的实现方式,支持泛型(几乎)不需要 JVM 或类文件更改。所有工作都在编译器中完成,编译器生成类似于没有泛型(和强制类型转换)时所写的代码,只是更能确保类型安全而已。2.2 系统环境配置做好系统需求分析之后,我们应该选择系统开发的环境去实现系统的功能。 下载安装Sysdeo Tomcat插件,用来管理Tomcat服务器,提供断点调试功能,并且能自动建立Tomcat环境,修改其配置文件,是一个不错的Tomcat开发插件。 网页开发离不开HTML技术,HTML制作静态的网页的框架和页面,再加上CSS技术和JavaScript这样的脚本语言,使得网页漂亮、个性。 因为系统采用B/S模式,因此必须选择一个网页编程技术,像JSP,PHP,JAVA这样的技术。 数据库设计与实现 本章简单介绍了Microsoft SQL Server 2000,然后着重阐述了数据库的需求分析,逻辑设计及优化和数据库表的创建,详细地介绍了系统数据库的分析、设计及其实现的过程。 3.1 Microsoft SQL Server2000 简介Microsoft SQL Server 2000是由微软Microsoft出品,基于关系型数据库的大型数据库系统。它具有独立于硬件平台、对称的多处理器结构、抢占式多任务管理、完善的安全系统和容错功能,并具有易于维护的特点。同时又比它的增加了许多更先进的功能、具有使用方便、可伸缩性好与相关软件集成程度高等优点。 Microsoft SQL Server 2000有如下主要特点: (1)具有丰富的图形管理工具。 (2)动态自动管理和优化。系统在运行过程中可根据运行时的状态自动配置参数。 (3)支持XML、HTTP。通过XML可访问Microsoft SQL Server服务器。 (4)丰富的编程接口。Transact-SQL、DB-Library for C、嵌入式SQL。 (5)具有良好的伸缩性和可靠性。可运行在多种操作系统下;可运行在?CPU或对称多CPU环境下。 (6)简单的管理方式。SQL Server具有较好的管理工具外,还可与操作系统有机集成,利用操作系统提供的服务和功能管理SQL Server系统。3.2 数据库需求分析 系统中的实体有:学生、教师、课程、教务员。 关系有:学生修课,教师授课。 校园风景实体E-R图如图3-1示校园风景图3-1校园图片实体E-R图教务员实体E-R图如图3-2示教务员 图3-2 教务员实体E-R图学生实体E-R图如图3-3示学生图3-3学生实体E-R图教师实体E-R图如图3-4示教师图3-4教师实体E-R图课程实体E-R图如图3-5示课程 图3-5课程实体E-R图(6)学院实体E-R图如图3-6示学院图3-6课程实体E-R图教师、学生、课程之间关系的E-R图。 教师和课程之间是1对n的讲授关系,也就是说一名老师可以讲授多门课程;学生修课既和老师有关又和课程有关,即学生和讲授关系有关,将讲授和其对应的实体-教师和课程作为一个聚集。学生与此聚集之间有1对M的修课关系,即一名学生可以修多门课程。E-R图如图3-7示。 教师教师 学生 图3-7 教师、学生、课程之间关系E-R图 3.3 数据库逻辑设计 数据库的逻辑设计就是把E-R图转化为所选用地数据模型。本系统数据库系统为SQL Server 2000,因此将E-R模型转化为关系数据模型即可。 学生(学号,学生名,性别,出生年月,电话,学院,专业,班级); 教师教师编号,教师名,性别,电话,院系,密码; 课程(课程编号,课程名,学分,上课时间,上课地点); 学院(学院名称,系别名称); 教授(课程代码,教师编号,课程编号,教学班号,开课时间); 修课考勤(课程代码,学号,课程编号,教师编号,教学班号,早退,迟到,旷课,请假)。3.4 数据库结构创建 数据库采用Microsoft SQL Server 2000,利用SQL语言,通过查询分析器可以创建数据库和建立数据表,通过企业管理器也可以方便的管理数据库。 3.4.1 建立数据表 通过SQL语句在查询分析器下边可以方便的建立数据库以及数据表。在查询分析器中分别建立教务员信息表(ADMIN)、学生信息表(STU_INF)、教师信息表(TEA_INF)、课程信息表(COU_INF)、学生修课考勤表(ATT_INF)。 下边仅以创建修课考勤表为例: CREATE TABLE ATT_INF - 修课考勤表 idINTIDENTITY 1,1 PRIMARY KEY , -自动编号 cou_cod INTNOT NULL, -课程代码 cou_numCHAR8 NOT NULL, -课程编号 cou_namVARCHAR20NOT NULL, -课程名称 tea_num CHAR8 NOT NULL,-教师编号 tea_nam VARCHAR8NOT NULL,-教师姓名 stu_num CHAR8 NOT NULL,-学生编号 stu_nam VARCHAR8NOT NULL,-学生姓名 cla_num SMALLINT NOT NULL,-教学班号 cou_cre NUMERIC2,1 NOT NULL,-课程学分 leave_early TINYINT NOT NULL,-早退次数 late TINYINT NOT NULL,-迟到次数 absentTINYINT NOT NULL,-缺席次数 attTINYINT NOT NULL,-到勤次数 leave TINYINT NOT NULL,-请假次数 CONSTRAINT FK_atea_con -创建FK_atea_con外键约束 FOREIGN KEY tea_num -tea_num参考表TEA_INF(教师信息表 REFERENCES tea_inftea_num -中的tea_num项 ON UPDATE CASCADE -更新时级联更新 ON DELETE NO ACTION , -删除时没有动作 CONSTRAINT FK_astu_con -创建FK_astu_con外键约束 FOREIGN KEY stu_num-stu_num参考STU_INF(学生信息表 REFERENCES stu_infstu_num-中的stu_num项 ON UPDATE CASCADE -更新时级联更新 ON DELETE NO ACTION, -删除时没有动作 CONSTRAINT FK_acou_con-创建FK_acou_con外键约束 FOREIGN KEY cou_cod-cou_num参考表TEA_INF(学生信息表 REFERENCES cou_infcou_cod -中的cou_num项 ON UPDATE NO ACTION-更新时没有动作 ON DELETE NO ACTION , -删除时没有动作 教务员信息表存贮教务员的用户名、姓名还有密码,因为密码要经过MD5加密,所以密码长度为50。表结构如表3-1示。 表3-1教务员信息表 ADMIN 教师信息表存贮教师的基本信息,主要包括教师编号、教师姓名、性别、所在学院、电话、登录密码。表结构如表3-2所示。 表3-2 教师信息表 TEA_INF 学生信息表记录了学生的基本信息,包括学号、学生姓名、性别、出生年月、电话、学院、专业、年级,还有密码。表的详细结构如表3-3所示。 表3-3学生信息表 STU_INF 学院专业信息表主要记录学院和对应的专业,包括学院名和专业名。因为记录数量比较少,所以不设主键。表结构如图3-4所示。 表3-4 学院专业信息表 MAJOR 程信息表记录了课程的基本信息,包括课程代码、课程编号、授课教师编号、姓名、教学班号、学分、开课院系、开课周,上课时间。表结构如表3-5所示。 表3-5 课程信息表 COU_INF 校园风景信息表主要是记录校园风景图片的信息,主要包括图片编号,图片名称和图片上传的时间。表的结构如表3-6所示。 表3-6 校园风景信息表 PIC_INF 学生修课信息表是整个系统的关键表,记录了学生的考勤记录。主要字段有学号、学生姓名、课程编号、课程名称、教师编号、教师姓名、教学班号、学分、早退次数、迟到次数、旷课次数、请假次数、出勤次数。表结构如图3-7所示。表3-7学生修课考勤表 ATT_INF3.4.2 数据表间关系 数据表建立好之后,我们可以在企业管理器中查看表之间的关系。本系统数据库建立好之后,可以看见数据库间的关系如图3-8所示。由图可知:pic_inf校园风景表、admin教务员信息表是2个独立的表,他们各自和其他的表没有直接的关系,而tea_inf(教师信息表)、cou_inf课程信息表、stu_inf(学生信息表)、att_inf(修课考勤信息表)之间有关系存在。 图3-8数据表间关系图 系统详细设计 本章详细介绍了系统的编码实现过程。按照功能模块分别介绍了未登录用户、学生用户、教师用户、教务员用户等四个功能模块设计,着重介绍了系统编码实现中的难点和重点。4.1 用户登录 登陆界面主要是2个文本框分别输入用户名和密码,一个下拉框选择登陆类型。界面如图4-1所示,程序如下示。form methodpost actionlogin_check.asp namelogin onSubmitreturn checkthis 用户名:input typetext nameusername size13 tabindex1length8classsamllInput密码:input typepassword namepassword size13 tabindex2 length15 classsamllInput类型:select size1 namekind tabindex3 classsmallInputoption selected value学生学生教师 input typesubmit value提交 nameB1 tabindex4 classsmallInput input typereset value重置 nameB2 tabindex5 classsmallInputactionlogin_check.asp :数据后login_check.asp处理数据 ;onSubmitreturn checkthis :点击提交按钮之后,返回check函数值nameusername :设置文本框或下拉框的名字;length 8: 设置可输入的最大长度为8;tabindex2:设置tab键的顺序为2;classsamllInput 设置文本框的样式位samllInput,samllInput是css文件中设置的一个文本框的样式类。图4-1 用户登录界面 用户登录先经过javascript函数验证,验证成功则进行服务器验证,否则就提示用户有错误。用户登录流程如图4-2示。 图4-2 用户登录流程4.1.1 不访问服务JavaScript器函数验证 JavaScript语言可以实现不用访问服务器就可以对从用户提交来的数据进行有效性验证。登陆的验证通过以下checkform函数进行验证。OnSubmitreturn checkthis实现当用户点击提交之后,调用checkform进行数据验证,验证错误,返回false,弹出一个信息框,提示用户数据输入有误,用户输入的数据不会提交给服务器,这样可以节约用户上网效率,减少WEB服务器的负担。具体checkform函数程序如下。Function check formvar /.ue.replace/s+|s+$/g,;/定义user变量,利用正则去空格var /.ue.replace/s+|s+$/g,;/定义pwd变量,利用正则去空格if user | pwd /如果用户名或者密码为空alert用户名或密码不能为空!;/提示错误信息return false; /返回falseelse if user.length!8 | user.search/0-90-90-90-90-90-90-90-9/gi-1 /如果用户名长度不为8,或者不为9个数字alert用户名格式不正确,只能为8位数字; /提示错误信息return false;/返回falseelse return true; /数据符合,返回true,数据提交给web服务器 运行过程中,当用户没有输入信息、或输入信息不全、或者用户名或空格输入的都是空格,提示如图4-3示。图4-3 用户提示 当用户名不为8位数字(教师编号和学号只能为8位数字),提示如图4-4示。图4-4 用户提示4.1.2 登陆服务器访问验证先读取用户提交的用户名、密码和用户类型,并且去掉空格,然后对密码进行MD5加密。根据用户类型在对应的表中查找是否有符合的数据,没有查找到就给用户提示,返回首页,以便用户重新登陆。如果找了符合的数据,设置session“username”为用户名,sessionuser为用户姓名,根据用户登录类型设置sessionpass。!-#include fileconn.asp-!-#include filemd5.asp-%conn.asp为数据库连接文件,md5.asp为MD5加密文件usernametrimrequestusername 读取用户提交的用户名,trim去空格passwordmd5trimrequestpassword读取用户提交的密码,去空格,MD5加密kindrequestkind读取用户类型if kind学生 then 如果用
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 商业管理 > 营销创新


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!