教育教学评价系统数据库的设计与实现Word格式文档下载.docx
- 文档编号:6762825
- 上传时间:2023-05-07
- 格式:DOCX
- 页数:52
- 大小:284.91KB
教育教学评价系统数据库的设计与实现Word格式文档下载.docx
《教育教学评价系统数据库的设计与实现Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《教育教学评价系统数据库的设计与实现Word格式文档下载.docx(52页珍藏版)》请在冰点文库上搜索。
从理论上,介绍了数据库设计的步骤方法、数据库设计中的规范化问题以及Hibernate技术。
然后着重介绍教育教学评价系统中数据库结构模型的设计方案,并介绍了利用基于JAVA语言的数据库持久层访问技术——Hibernate技术对数据库进行应用操作的实现方法。
关键字:
教育教学评价、数据库系统、Hibernate技术、概念模式、ER图
Abstract
ThispaperwillintroducethebackgroundofthedevelopmentofEducatedandTeachingEvaluationSystem(ETES),andtheadvantageofthesystemcomparedwiththeprocessofthetraditionalteachingevaluation.Thepaperwillalsoanalyzetheimportanceofthedatabasesystem,whichisusedinETES,andtheconceptofHibernate.Furthermore,itwillintroduceindetailstheprocessofourdatabasesystemdesign,andthemethodofHibernatethatwasusedtomanipulatethedatabase.
Keyword:
Educatedandteachingevaluation、Databasesystem、Hibernate、ConceptualModel、EntityRelationDiagram
第一章绪论………………………………………………1
1.1.教育教学评价系统……………………………………………………………………1
1.1.1.教育教学评价系统的开发背景……………………………………………1
1.1.2.网上教育教学评价系统与传统教育教学评价的比较……………………1
1.2.现有教育教学评价系统现状…………………………………………………………2
1.2.1.现有教育教学评价系统介绍………………………………………………2
1.2.2.现有系统中数据库的设计与实现方案……………………………………2
1.3.数据库系统在教育教学评价系统中的地位与作用…………………………………3
1.4.本文的主要研究内容…………………………………………………………………4
第二章系统数据库设计与实现的理论基础……………5
2.1.数据库设计的理论基础………………………………………………………………5
2.1.1.数据库设计的基本步骤……………………………………………………5
2.1.2.数据库设计中的规范化问题………………………………………………7
2.2.数据库实现的理论基础………………………………………………………………8
2.2.1.Hibernate技术简介…………………………………………………………8
2.2.2.Hibernate技术在数据库实现中的优势……………………………………10
第三章系统整体功能和数据库需求分析………………12
3.1.系统整体功能介绍……………………………………………………………………12
3.2.系统数据库设计的需求分析…………………………………………………………14
第四章教育教学评价系统数据库的设计………………17
4.1.系统概念模式的设计…………………………………………………………………17
4.2.系统逻辑模式的设计…………………………………………………………………21
4.3.数据库物理实现………………………………………………………………………25
第五章教育教学评价系统数据库的实现………………32
5.1.使用Hibernate实现数据库表与对象间的映射……………………………………32
5.1.1一般数据库表与对象间的映射……………………………………………32
5.1.2数据库视图与对象间的映射………………………………………………33
5.2.使用Hibernate实现对数据库表的访问操作………………………………………33
5.2.1.查询数据库表的实现………………………………………………………33
5.2.2.修改、删除数据库记录操作的实现………………………………………35
5.2.3.添加数据库记录操作的实现………………………………………………36
第六章结束语……………………………………………37
6.1.主要工作………………………………………………………………………………37
6.2.进一步的开发工作……………………………………………………………………37
参考文献……………………………………………………38
附录…………………………………………………………39
致谢…………………………………………………………43
第一章绪论
1.1.教育教学评价系统
1.1.1.教育教学评价系统的开发背景
教育教学是一个复杂的过程,教育教学的实施最终要落在人的身上。
而教育教学的成果也最终体现在受教育的客体身上。
为了使教育教学过程适合一定的教育教学环境,教育教学过程更加合理,方法更加得当,对教育教学过程中涉及的客体——教书育人者、接受教育者、教学课程、教学环境、教学管理状况等进行评价,以便使参与教育教学的人不断提高自己的素质,使教育教学方法得到改善与提高,教学质量不断提高——也就显得至关重要了。
近年来,随着计算机应用的普及,电脑走进千家万户,深入到人们的生活、学习、工作等各个方面,并日益成为一种重要的工具。
随着信息化时代的到来,校园信息化的步伐不断加快,各大高校在教育教学过程中采取的方式方法更是紧跟时代的步伐,特别是对原有的教育教学评价方式,更是采用了无纸化的方式——通过计算机和网络,将教育教学的评价过程从传统的以卷面形式转变为网上评价的方式。
网上教育教学评价系统应运而生。
1.1.2.网上教育教学评价系统与传统教育教学评价的比较
以往各个学校进行的教育教学评价过程,大都是采用卷面调查的形式,而这样的评价方式需要投入大量的人力、物力——确定评价体系,印刷评价试卷,在评价结束后集中大量人力进行评价统计、分析,这期间不仅需要充足的人力与预算经费,而且在实施评价后进行的统计分析过程中,由于人力资源的缺陷和人工操作的不足,容易造成难以恢复的错误与误差。
与此相比,采用计算机通过网络进行的网上教育教学评价过程就能够很好地解决这些问题——确立的评价试卷可以存储在数据库中,只需一份,而无需向每一个参评人员发放。
参评人员通过网络登陆到评价系统中,无需统一安排时间和地点进行统一评价,只要系统开放,随时都可以登陆进行评价。
另外,网上评价过程和传统评价过程相比最为突出的优势就在于其利用数据库管理系统,对参评人员的评价信息进行合理、准确的统计计算与分析,统计过程无需人工参与,完全由计算机独立完成,并且可以根据用户的需要,按照不同的条件进行统计结果的查询,以及对历年的统计信息进行存储与查询,以便比较不同年限的得分走势,便于教学工作者进行分析与总结。
总之,以数据库为核心的网上教育教学评价系统与传统的教学评价过程相比较的优势,可以总结为以下几点:
●利用网络服务器,可以长期、动态的存储大量的个人信息、而且所有的数据数字化的形式存储,有利于进行检索、查找、增加、删除、计算、统计等一系列工作。
●参与评价的各方面人员可以在自己最合适的时间参与评价活动,保证信息的有效性和质量。
●通过系统的交互,减少评价主体和评价客体的直接接触,避免评价人员对于学生产生的主观印象的影响,保证对于每个评价对象一视同仁。
评价过程的公开性保证了评价工作的透明性,维护了评价的公正性。
●评价信息的个性化和网络的开放性并存,有利于针对各个评价对象做出个性化的评价策略,提供个性化的诊断;
同时也利于和其它的相关评价活动之间的信息交流。
[2]
1.2.教育教学评价系统现状
1.2.1.现有教育教学评价系统介绍
到目前为止,已经有不少高校建立了自己的教育教学评价系统,如清华大学、郑州大学、东南大学等多所高校相继在广域网上发布了自己设计制作的教育教学评价系统。
采用B/S结构,利用数据库管理系统实现数据、信息的存储,基本的功能包括对评价指标的定制、评价不同对象、统计分析评价数据、查询评价结果等几部分。
1.2.2.现有系统中数据库的设计与实现方案
在教育教学评价系统中,数据库系统的设计是必不可少的。
从多个已经成形的系统的功能中可以归纳出,现有评价系统的数据库系统中,都存在几个必不可少的关系表——参评对象表、被评对象表、评价体系表以及统计结果表。
尽管不同系统针对以上四个关系表的实现方式不同,但归纳起来,整个评价过程都离不开这几个数据表结构——参评人员通过参评对象表区别与验证身份以便以合法身份登陆系统,再根据被评对象表中的记录,通过评价试卷进行相关评价。
评价结束后,数据库存储评价结果,再根据需要进行汇总统计,将统计结果存储在统计结果表中,以便让管理教育教学工作的领导和参加教学评价过程的师生进行查看与分析。
1.3.数据库系统在教育教学评价系统中的地位与作用
教育教学评价系统中需要涉及到大量的数据存储,不仅包括参评对象、被评对象、评价试卷以及本次评价的原始数据和结果的统计,而且更重要的是,教育教学评价的反馈不是一个孤立的行为,它不仅要把本次教育教学评价的结果反馈给用户,而且还应该把历年的评价结果和本年的作以比较,共同反馈,必要的话,还需要把几年的统计结果作以综合的分析,因此对历年的评价结果信息的存储也是至关重要的。
如此大量的信息存储,在传统的教育教学评价过程中,完全是靠人力的计算,以及消耗大量的人力与物力资源进行保存备份的,其统计的效率及结果的可信程度,以及评价过程本身的成本是可想而知的了。
采用计算机的教育教学评价涉及的数据量庞大,而且要求数据不随程序的结束而消失,需要长期保存在计算机系统中的应用,显然是一种数据密集型应用[1]。
如果这种数据密集型应用在计算机中采取文件系统进行数据管理,将存在以下明显的缺陷[1]:
●编写应用程序很不方便。
程序编写者必须对所用的文件的逻辑和物理结构有清楚地了解,包括对文件的打开、关闭、读、写等底层文件操作命令。
同时,这样编写的程序生产率不高,如有新的要求,则必须请熟悉文件的程序员编写相应的应用程序,一般需要较长时间。
●文件的设计很难满足多种应用程序的不同要求,数据冗余往往不可避免。
为了兼顾各种应用程序的要求,在设计文件系统时,往往不得不增加数据冗余,有时数据冗余非常严重。
数据冗余不仅浪费存储空间,而且会带来数据的不一致。
在文件系统中,无维护数据一致性的监控机制,数据的一致性完全由用户负责维护。
这在像评价活动这类涉及的数据量较大的系统中,保证数据的一致性几乎不可能。
●文件结构的每个修改将导致应用程序的修改,应用程序的维护工作量很大。
●文件系统一般不支持对文件的并发访问。
●由于缺少对数据的统一管理,在数据的结构、编码、表示格式、命名以及输出格式等方面不容易做到规范化、标准化;
在数据的安全和保密方面,也难以采取有效的措施。
可见,在数据密集型应用领域,文件系统无法承担数据统一管理的重任,教育教学评价系统自然也不应采用文件系统作为数据存储管理的理想工具。
正因如此,数据库系统以其在保证数据一致性、对并发存取的控制、数据安全性的访问控制以及在故障发生时保证数据一致性的恢复方面的突出特点,成为了教育教学评价系统中对数据进行存取控制的不可或缺的理想工具。
而且,在整个教育教学评价系统中,由于系统在运行期间始终在和数据打交道,对数据的存取、计算贯穿于评价过程始终,因此,数据库系统在教育教学评价系统中居于核心地位,数据库系统设计是否良好必将直接影响到整个教育教学系统的性能以及评价过程和后期查询统计过程的顺利进行,而对系统功能的影响最终会对实际的教育教学工作带来很大的麻烦。
1.4.本文的主要研究内容
从以上分析我们可以看到,数据库设计开发在教育教学系统中有着至关重要的作用。
为此,本文主要针对本人参与实现的教育教学评价系统,介绍系统实现过程中数据库的设计过程,包括需求分析、概念模式设计、逻辑模式设计以及物理模式设计,另外还介绍利用Hibernate技术对数据库表和对象之间的映射,以及数据库操作的实现过程。
第二章系统数据库设计与实现的理论基础
2.1.数据库设计的理论基础
2.1.1.数据库设计的基本步骤
数据库设计的主要任务是构造一个数据库模式,它是一个逐步求精的过程。
它是数据库生存周期中的一个重要阶段,也是工作量比较大的一项活动,其质量对数据库系统影响颇大。
数据库设计具体实现时,常将设计过程分为四个阶段进行,即需求分析、概念模式设计、逻辑模式设计和物理模式设计。
这个过程把用户对信息的需求用用户的语言表达出来,并逐渐通过一系列的转换,转为一些概念和表示(图形、表格),成为计算机能够接受的形式。
图2-1数据库设计的基本步骤
●需求分析:
设计一个数据库,首先必须确认数据库的用户和用途。
由于数据库是一个单位的模拟,数据库设计者必须对一个单位的组织、各部门的联系、有关事务和活动以及描述他们的数据、信息流程、政策和制度、报表及其格式和有关文档等有所了解。
需求分析的主要任务是根据用户需求,对系统功能和性质进行描述,并根据具体情况和各种约束条件生成需求分析报告。
其主要步骤有:
调查和搜集数据信息,业务建模,分析数据及其加工要求,设计系统整体结构。
●概念设计:
概念设计使用一种概念模式将用户数据要求明确的表达出来。
它是一种面向问题的数据模型,描述了从用户角度看到的数据库,反映了用户的现实环境,但与采用何种技术实现数据库无关。
概念模式在用户与数据库设计人员之间发挥着桥梁的作用,一方面它明确表达了用户的需求,另一方面,概念模式也是设计数据库结构的基础。
概念模式的设计方法有多种,大致可以分为两类:
一是面向信息实体的,如PeterChen的实体关系法、JohnSmith的数据库抽象方法及Codd的规范化方法;
另一类是面向应用的,如Michael的自动化数据库格式设计及优化方法、S.B.Yao的关系数据库格式设计工具。
教育教学评价系统数据库概念模式的设计采用的是实体关系法,即在需求分析的基础上,抽象设计出多个实体以及相互的关系,并绘制实体关系图(ER图)
●逻辑设计:
逻辑设计的主要任务是按照已经选择好的关系数据库管理系统的特点,把概念模式转换成相应的数据库逻辑结构,进而用数据库管理系统提供的数据定义语言DDL完成数据库结构的定义,将实体关系模型转换成关系数据库模式。
在逻辑设计过程中,可以把转换过程分为两步:
先把概念结构向一般数据模型转换,在向特定的数据库管理系统支持下的数据模型转换。
●物理设计:
数据库物理设计的主要任务是根据逻辑模式、数据库管理系统及计算机系统所提供的手段和施加的限制,涉及数据库的内模式,即文件结构、各种存取路径、存储空间的分配、记录的存储格式等。
数据库的内模式虽然不直接面向用户,但对数据库的性能影响颇大。
数据库管理系统提供相应的数据定义语言(DDL)及命令,共数据库设计人员及数据库管理人员定义内模式之用。
2.1.2.数据库设计中的规范化问题
数据库设计的应该达到的目标之一,就是尽量减少数据的冗余。
所谓数据冗余,就是数据在数据库中存储在了多个地方——多个关系表中存储了相同的数据,在更新或是在删除的时候必须同时处理,否则就会出现数据混淆的严重后果[3]。
而规范化的设计就是为了解决数据冗余的问题而提出的。
数据库规范化过程是模型化和设计关系数据库的基础,他的目的是消除数据冗余、避免非规范化数据库中(未被规范化的数据库)的数据更新异常以及简化完整性约束的执行。
其基本思想是通过对关系模式进行分解,用一组等价的关系子模式来代替原有的关系模式,消除数据依赖(包括函数依赖和多值依赖)中不合理的部分,使得一个关系仅描述一个实体或者实体间的一种联系。
这一过程必须在保证无损连接性、保持函数依赖性的前提下进行,即确保不破坏原有数据,并可将分解后的关系通过自然联接恢复至原有关系。
具体地说,规范化设计的过程就是按不同的范式,将一个二维表不断地分解成多个二维表并建立表之间的关联,最终达到一个表只描述一个实体或者实体间的一种联系的目标。
目前遵循的主要范式包括1NF、2NF、3NF、BCNF、4NF和5NF等几种;
在工程中3NF、BCNF应用得最广泛,推荐采用3NF作为标准。
规范化设计的优点包括可有效地消除数据冗余,理顺数据的从属关系,保持数据库的完整性,增强数据库的稳定性、伸缩性、适应性。
[4]
规范化设计带来了减少数据冗余的优点,但同时,正因为规范化设计是将一个二维表通过一定的规则分解为多个二维表,它处理的后果是产生更多的只有相对较少列的二维表,表与表之间是通过主键/外键关系连接起来的,以便将信息统一的反馈给用户。
而这种重新连接的过程,很容易导致计算机时间、空间、系统及运行效率的损失。
所以,在规范化与效率之间存在着彼此牵制的矛盾。
为了解决规范化设计带来的效率上的弊端,不少人提出了反规范化设计的思想,其基本思想是,现实世界并不总是依从于某一完美的数学化的关系模式。
强制性地对事物进行规范化设计,形式上显得简单化,内容上趋于复杂化,更重要的是导致数据库运行效率的减低。
非规范化要求适当地降低甚至抛弃关系模式的范式,不再要求一个表只描述一个实体或者实体间的一种联系。
其主要目的在于提高数据库的运行效率。
非规范化设计的主要优点是减少了查询操作所需的连接;
减少了外部键和索引的数量;
可以预先进行统计计算,提高了查询时的响应速度。
非规范化存在的主要问题是增加了数据冗余;
影响数据库的完整性;
降低了数据更新的速度;
增加了存储表所占用的物理空间。
其中最重要的是数据库的完整性问题。
这一问题一般可通过建立触发器、应用事务逻辑、在适当的时间间隔运行批命令或存储过程等方法得到解决。
规范化与反规范化设计从某种意义上讲,并不是完全对立、非此即彼的。
如果对实际开发的数据库系统有一个全面地了解,在此基础上可以对不同的关系模式采取不同的设计方案,以便达到数据完整性与运行效率兼得的理想效果。
2.2.数据库实现的理论基础
2.2.1.Hibernate技术简介
本教育教学评价系统拟使用JAVA语言设计开发的。
在一般情况下,使用JAVA语言访问数据库,对数据库表进行各种操作通常是采用JDBC技术,JDBC提供了一整套同数据库连接、访问与操作的JAVA类集。
然而,JAVA语言是面向对象语言,JAVA程序中使用的实体都是以对象的形式表现的,而与此相比,我们现在广为使用的数据库是关系型数据库,现实世界中的实体集合在数据库中是以二维表格的形式存储的,某一个特定的实体在数据库中是表格中的一条记录,一条记录又分为多个字段,表现为现实世界中实体所具备的属性。
如果能够将JAVA语言中使用的具体对象同关系数据库中数据表的一条具体的记录对应起来,以一种机制将记录直接映射成为一个可以在面向对象语言中实际使用的对象,那样在面向对象编程与对数据库进行的访问操作等方面都将会十分的便利。
而Hibernate正是为此目的而设计的技术。
Hibernate是一个开放源代码的O/RMapping(对象关系映射框架),它对JDBC进行了轻量级的对象封装,使Java程序员可以随心所欲的使用对象编程思维来操纵数据库。
其总体的设计框架如图2-2所示:
图2-2Hibernate的总体设计框架
Hibernate利用xml将持久化对象(PersistentObjects)和数据库中特定的表进行映射,通过hibernate.properties配置文件的支持访问数据库,并将xml文件中映射的相关数据表,映射为应用程序(Application)中实际使用的对象。
图2-3Hibernate运行时的体系结构
图2-3中展现了轻型体系中,应用程序自己提供JDBC连接,并且自行管理事务。
这种方式使用了HibernateAPI的一个最小子集。
而在全面解决体系中,对于应用程序来说,所有的底层JDBC/JTAAPI都被抽象了,Hibernate会替你照管所有的细节,如图2-4所示:
图2-4Hibernate全面解决体系框架
2.2.2.Hibernate技术在数据库实现中的优势
面向对象编程中对数据库的操作,就是所谓的持久层的设计问题,一直都是困扰着众多数据库访问操作设计人员的一个核心问题。
从以往的经验来说,对持久层的设计问题地解决,开发人员一般是使用JDBC+DAO。
而JDBC+DAO存在很多的困难,开发人员很难做到把关系表记录完整的映射到持久对象的关系上来,这主要体现在多表的关系无法直接映射到对持久对象的映射上来,可能是一个表映射多个持久对象,有可能是多个表映射一个持久对象,更有可能的是表的某些字段映射到一个持久对象,但是另外一些字段映射到别的持久对象上。
而且即使这些问题都处理好了,也不能直接按照对象的方式来对持久对象编程,因为存在1:
N关系的持久对象的查询其实就是1+n次对数据库的SQL查询。
或许将关系数据库改变为对象数据库会使这种对象关系映射问题得以解决,但实际上关系数据库并没有被淘汰,而对象数据库的发展还处在萌芽阶段,于是就只能在上层的应用层找解决方案了,也就是需要一种对象关系映射(ORM)的产品,比较理想的ORM产品应该具备以下特点:
1、开源和免费的License,开发人员可以在需要的时候研究源代码,改写源代码,进行功能的定制。
2、轻量级封装,避免引入过多复杂的问题,调试容易,也减轻程序员的负担。
3、具有可扩展性,API开放,当本身功能不够用的时候,可以自己编码进行扩展。
使用过Hibernate的持久层设计开发人员都会对Hibernate技术给予以上特点的评价。
Hibernate正是以简洁的开放式的代码实现了对象关系的映射,使开发人员可以轻松的驾驭使用它,对底层关系数据库进行相关的访问操作,而且其开源的特点,更使开发人员可以根据实际的需要进行扩展,提高数据库操作的效率与性能。
第三章系统整体功能和数据库设计中的需求分析
3.1.系统整体功能介绍
我们拟实现开发的教育教学评价系统的用户包括:
学生、教师、学生辅导员、院系领导、校领导、校级系统管理员、院系级系统管理员。
各种用户对系统的使用要求如下:
●学生:
通过登陆系统,可以对自己本学期所学课程的任课教师、本学期所学课程以及所在院系的教学环境、教学管理进行评价。
在查看结果阶段,可以查看到辅导员对自己的评价结果;
可以查看到自己对本学期所学课程的任课教师的评价和学院整体对该教师的平均评价结果。
●教师:
通过登陆系统,可以对自己所在院系的其他教师进行评价;
可以在查看评价结果前,对自己进行自我评价,;
可以对
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 教育 教学 评价 系统 数据库 设计 实现