




已阅读5页,还剩53页未读, 继续免费阅读
(通信与信息系统专业论文)基于spring的教育资源管理系统的研究与实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
i 摘 要 网络教育是当今国内外教育发展的热点,也是现代教育技术的主流发展方向之 一。为了更有效地建设教育资源库,促进教育资源的充分共享,提高教育资源检索 的效率,保证资源建设的质量,教育资源管理系统的研究与实现成为网络教育进一 步发展的关键。 当前网络教育虽然拥有丰富的教育资源, 但是一方面由于资源格式的复杂多样, 资源建设缺乏规范化,使得用户无法获取、重用这些网络上的丰富资源;另一方面 由于缺乏调查资源质量与需求状况的途径,导致低水平教育资源的重复建设。这两 方面的问题都制约了网络教育的发展。 针对以上情况,本文在深入探讨和研究学习对象元数据标准与内容包装规范的 基础之上,提出了网络教育资源的一种标准化模型,并以 spring 框架为核心,通过 对 struts 和 hibernate 框架的整合, 融入 freemarker 模板引擎, 设计并实现了一种基 于 spring 框架的教育资源管理系统,为教育资源的标准化录入、存储、描述、管理、 检索和统计提供了有效途径。系统引入了基于角色的访问控制(role based access control, rbac)的权限管理体系,便于系统的用户管理和功能扩展。最后,对系统 进行了压力测试和应用效果评估,分析并总结了系统的负载能力、健壮性、可扩展 性和可维护性等性能指标。 本文设计出的系统在全国高校网络教育质量监管服务平台中得到了良好的应 用,促进了各院校间教育资源的共享和重用,丰富了资源的描述及表现方式,提高 了资源检索的效率,给出了资源统计的方式和途径,为调查各网络院校的教育资源 状况提供了一个信息平台。 关键字:关键字:网络教育; 学习对象元数据; spring 框架; 资源管理 ii abstract e-learning is the hotspot of the international and domestic education development. also it is the main direction of distance education development. in order to effectively build educational resources bases and promote the sufficient sharing of educational resources, the research and implementation of education resource management system has become the key to the further development of e-learning. such a system is essential to improve the searching efficiency and ensure the quality of educational resources development. on one hand, users cant obtain and reuse educational resources because of the complex types of formats and the lack of standardization. on the other hand, low level educational resources have been rebuilt frequently due to the shortage of investigation of educational resources quality and requirement situation. although e-learning is supported by a large number of educational resources now, both of the problems have restricted the development of educational resources. to resolve the issues mentioned above, the thesis proposes a theory module based on the research of learning object metadata(celts-3) and content packaging specification(celts-9) for the educational resources standardization. meanwhile, it designs and implements an educational resources management system using the spring framework as the core and based on the integration of struts and hibernate frameworks with freemarker template engine, and provides available ways and means for the standardization of register, storage, description, management, retrieval and statistics. the authority management system is convenient for the expansion of the system. finally, it analyzes the load capacity, robustness, extensibility, maintainability and other performance indicators by the pressure test and application assessment. the system this paper designs is well used in the system of national e-learning quality monitoring services platform. it promotes the sharing and reuse of educational resources among the institutions, enriches the description and performance of resources, improves the efficiency of resources retrieval, gives the ways and means of resources statistics, and provides an information platform for the investigation of the present educational resources development. keywords: e-learning; learning object metadata(lom); spring; resource management v 缩略语 aop - aspect oriented programming 面向切面编程 api - application programming interface 应用编程接口 celts - china e-learning technology standard 中国网络教育技术标准 cp - content packaging specification 内容包装规范 dao - data access object 数据访问对象 dcmes - dublin core metadata element set 都柏林核心元数据集 di - dependency injection 依赖注入 dom - document object model 文档对象模型 gui - graphics user interface 图形用户界面 html - hyper text markup language 超文本标记语言 ioc - inversion of control 反转控制 j2ee - java 2 platform enterprise edition java 2 企业版 lom - learning object metadata 学习对象元数据 lrm - learning resource metadata 学习资源元数据 mvc - model view controller 模型视图控制器 orm - object relation mapping 对象关系映射 rbac - role based access control 基于角色的访问控制 sax - simple api for xml xml 简单 api xml - extensible markup language 可扩展标记语言 独创性声明 本人声明所呈交的学位论文是我个人在导师的指导下进行的研究 工作及取得的研究成果。尽我所知,除文中已标明引用的内容外,本 论文不包含任何其他人或集体已经发表或撰写过的研究成果。对本文 的研究做出贡献的个人和集体,均已在文中以明确方式标明。本人完 全意识到本声明的法律结果由本人承担。 学位论文作者签名: 日期: 年 月 日 学位论文版权使用授权书 本学位论文作者完全了解学校有关保留、使用学位论文的规定, 即:学校有权保留并向国家有关部门或机构送交论文的复印件和电子 版,允许论文被查阅和借阅。本人授权华中科技大学可以将本学位论 文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印 或扫描等复制手段保存和汇编本学位论文。 保密,在_年解密后适用本授权书。 本论文属于 不保密 。 (请在以上方框内打“” ) 学位论文作者签名: 指导教师签名: 日期: 年 月 日 日期: 年 月 日 1 1 绪论 进入 21 世纪,计算机和网络技术得到了广泛应用,网络教育(e-learning)i 打破了传统的教学方式在时间和空间上的限制,以丰富的教育资源、灵活多变的教 学形式和先进的教学理念提供了一种全新的教育方式。近年来,随着信息技术的高 速发展和 internet 的飞速普及,我国的网络教育也得到了长足的发展。在网络教育 的发展过程中,人们已经深刻认识和体会到网络教育资源是教学成功的关键。网络 教育资源是开展网络教育的前提和基础,是网络教育各种应用的信息基础设施,只 有依托于内容丰富、方便实用的高水平的网络教育资源库,网络教育才能真正发挥 现代教育技术的优势。 1.1 研究背景 随着国家对网络教育的重视,对网络教育资源的投入加大,在教学资源数字化 和网络化的趋势下产生了大量的教育资源。面对如此庞大的教育资源库,缺少一致 的标准去规范和统一使得资源管理和查找变得十分困难,教育资源无法在网络上实 现有效的共享,造成资源的低水平重复建设ii。按照统一的标准去制作和规范教育 资源成为网络教育资源有效管理的关键。 在目前的资源建设当中,资源的开发者已经开始依据国际、国内的规范,例如 国际图书馆计算机中心oclc的都柏林核心元数据集 (dublin core metadata element set, dcmes)iii、全球学习联合公司 ims 的学习资源元数据(learning resource metadata, lrm)iv、电气电子工程师协会(ieee)的学习技术标准委员会(ltsc) 制定的学习对象元数据(learning object metadata, lom)v、中国网络教育技术标 准(chinese e-learning technology standards, celts)等对资源进行描述,建设符 合标准的教育资源。在未来的网络教育资源的建设当中,资源建设也会越来越趋向 于统一化、标准化,以利于实现资源的共享和管理。 1.2 教育资源服务的发展及现状 经过国家教育信息化建设的前期投入和实施,目前,已经建成了覆盖全国各高 校和大部分中小学的中国科研和教育计算机网(cernet) ,从 1998 年教育部批准 4 所高校开展远程学历教育开始,我国高校远程教育一直在高速迅猛发展。至今, 经教育部批准进行远程教育的试点高校已有 68 所, 其中 63 所被允许进行 2004 年招 生,全国各地已建成学习中心 2000 多个,在册学生高达 200 多万人。教育范围涵盖 普通专科、专科起点本科和研究生课程、二学位、非学历培训等各个层次、上百个 2 专业。以网络技术为基础的网络教育大大扩展了人们接受高等教育的机会和选择, 正在成为我国继续教育的一支重要力量。 我国网络教育资源服务系统的建设和分布存在着多方面的问题,这些问题成为 严重困扰我国网络教育继续发展的瓶颈vi。首先,虽然各地区都建有不同的资源管 理系统,但缺乏统一的管理,各自的资源缺乏统一的标准加以规范,从而很难利用 网络的优势,实现资源的共享和重用,降低了资源的利用率。其次,现有的资源管 理系统缺乏对资源的需求进行统计和调查的方式, 由于不了解教育资源的需求状况, 从而导致大量资源的低水平重复建设,难以保障资源质量,使资源的建设缺乏针对 性。最后,大量的网络资源缺乏对自身的描述,或者描述信息没有依据的统一的标 准,导致资源信息检索困难,使资源难以定位。因此,网络教育资源的标准化成为 了目前亟待解决的问题。 1.3 课题来源及研究意义 随着互联网和网络教育的不断发展, 现有的教育资源不仅包括传统的物理资源, 还包括数字化的资源,对于如此庞大的资源库,管理和检索存在着一定的难度。同 时,由于制作教育资源的工具各异,导致了对教育资源的使用和检索机制都不尽相 同,不利于教育资源的共享。因此,在网络教育建设中,如何实现教育资源的共享, 已成为网络教育发展中迫切需要解决的重要问题,而解决这个问题的关键在于教育 资源的标准化。 本论文的课题来源为: 教育部高教司,全国高校网络教育质量监管服务平台,2006 年。 针对网络教育的特点及共享教育资源的需求,本文将在参考国内外已有的教育 资源标准的基础上,研究适合国内网络教育资源信息的标准化录入、存储、管理、 描述、检索和统计的教育资源管理系统,希望该系统的实现能够使教育资源的建设 更具针对性,提升教育资源的质量, 促进教育资源的共享和管理。 1.4 论文组织结构 针对目前国内教育资源的标准化程度低、资源利用率不高、难以精确检索以及 资源低水平重复建设等问题,本文研究并实现了基于 spring 的教育资源管理系统。 以中国网络教育技术标准为理论基础,通过使用 spring 集成 struts、hibernate 的技 术框架对系统架构进行合理划分,以及 freemarker 模板引擎和 xml 解析技术的应 用,实现了一个跨平台、易扩展、标准化的系统,能有效的对教育资源的进行共享 和管理。 3 本文共分六章,各章的主要内容及结构安排如下: 第一章,阐述教育资源服务的发展及现状,提出论文选题思路及研究意义,介 绍论文组织结构。 第二章,在深入研究国内外学习对象元数据相关标准的基础上,结合全国信息 技术标准化技术委员会教育技术分技术委员会(celtsc)制定的学习对象元数据 标准(celts-3)和内容包装规范(celts-9) ,对该系统的理论基础进行研究,并 在此基础上提出一种教育资源标准化录入和描述的模型。总结该系统所用到的一系 列关键技术,包括 j2ee 架构,mvc 设计模式,spring、struts 和 hibernate 框架, xml 解析技术,freemarker 模板引擎等。 第三章,对教育资源管理模型所采用的技术框架进行深入研究,介绍核心框架 spring 中的控制反转理论和面向切面编程的思想,分析 spring 框架体系架构,研究 spring 对 struts 和 hibernate 的支持以及三种框架的整合,最后提出了教育资源管理 模型的技术框架整合方案。 第四章,在第三章所讨论的技术框架基础之上,对教育资源管理系统模型进行 详细的分析与设计,通过 struts、spring 和 hibernate 框架的组合应用,降低系统层 次结构间的耦合度,并引入基于 rbac 的权限管理体系,实现系统中角色的管理和 权限的分配,使系统更易于扩展。 第五章,在前几章关于教育资源管理模型的讨论基础之上,实现了教育资源管 理系统,并对系统中教育资源的录入、描述、管理、检索、统计和权限体系等功能 模块进行详细介绍,最后对系统进行压力测试和实际应用效果评估。 第六章,总结本论文的主要研究成果和系统的应用情况,指出需要进一步解决 的问题,对未来的发展前景进行展望。 4 2 理论基础及关键技术概述 网络教育资源日益丰富,教育资源元数据信息的标准化是实现资源共享、提高 资源利用率的关键。本章将针对学习对象元数据的相关标准及其 xml 绑定规范进 行介绍,阐述教育资源管理系统依据的理论基础及关键技术,并提出了教育资源的 标准化模型。该模型是对现有的教育资源管理系统的改进,它将讨论的重点放在教 育资源的标准化录入和描述上,提出了两种资源录入及标准化的途径,给出了多种 资源描述的表现形式,在实用性上又向前迈出了一大步。 教育资源的标准化是网络教育系统构建的基础,通过它从技术上、内容上、组 织管理上把各方面有机联系起来,形成统一的整体,保证远程教育有条不紊、稳定 地运行。同时,它也是衡量远程教育质量的重要依据,标准从它诞生开始就带有科 学性、先进性、规范性。只要整个网络教育按照标准执行,就有了获得高质量与高 效率的保证vii。通过标准化可以提高远程教育的经济效益,网络教育信息标准化可 以使远程教育的发展避免盲目性、重复性,避免不必要的、无代价的经济损失和劳 动损失,从而提高远程教育的经济效益。标准化的实施可以促进远程教育的进一步 发展,网络教育的学习教材开发标准化可以提高设计质量,缩短设计周期;网络教 育管理标准化,可以避免重复劳动,促进管理的科学化、统一化、协调化,提高管 理效率viii。 2.1 理论基础 学习对象元数据标准是教育资源标准化的理论依据,充分理解学习对象元数据 的基本概念和思想,熟悉相关的标准,是设计教育资源标准化模型的基础。 2.1.1 基本概念 学习对象(learning object) ix:学习对象是在结合面向对象的计算机科学思想 以及有关教学理论的基础上而产生的一种计算机辅助教学构件。通常情况下的学习 对象,指的是在任何学习行为中可以使用、重用或引用的任何数字或是非数字的实 体。在本文所讲的学习对象主要是针对网络教育中使用的学习资源,包括声音、视 频、动画、课件、学习软件等。 元数据(metadata) :元数据指的是关于数据的数据。它主要由元素和元素上下 文结构组成,元素类似于自然语言中的单词和词组,是元数据的基本组成成分。例 如:图书馆的书目卡片,它描述了书的作者、题目、出版社、出版日期等信息,这 些信息都属于元数据。 5 学习对象元数据(lom) :学习对象元数据指的是关于可重用的学习对象的元 数据。通过描述学习对象的属性,使用户可以在不操作学习对象的情况下通过元数 据信息来了解学习对象。基于这些元数据信息,学习对象可以被方便、有效地分类 管理、浏览、检索、获取、共享以及实现不同平台间的互操作性。 2.1.2 学习对象元数据标准 为了真正意义上实现学习对象的有效管理,增强学习对象的互操作性,达到互 操作的目的,学习对象元数据应该依据统一的标准,即应该有相同的语义模型和 xml 绑定规范。 学习对象元数据相关标准非常多,包括 dcmes、lom、ims md 和 celts-3 等。这些元数据规范标准之间不是绝对独立的,而是有着相当紧密的联系。dcmes 是最先产生的元数据标准,其它元数据规范标准都是在 dcmes 的基础上扩展而成 的。 celtsc 在 ltsc 和 ims 工作的基础上, 制定形成了自己的标准体系, 对 ltsc 和 ims 中已经成熟的规范或标准进行了一系列的本地化工作, 形成了符合我国教育 环境的标准体系。 本文中的教育资源标准化模型将采用 celts-3 学习对象元数据标 准、celts-9 内容包装规范为基础进行构建。 在 celts-3 所确定的 lom 标准x中,元数据被划分成 9 个类别,分别是: 1)通用(general) 。主要描述学习对象的一些通用信息,如标题、关键字、标 识符等。这些信息具有很好的通用性,几乎对所有的学习对象都是适用的。 2)生存期(lifecycle) 。主要描述学习对象的版本状态以及为学习对象做出贡献 的人或组织。生存期和通用这两个类别所描述的信息是“传统”意义上的属性信息, 覆盖了都柏林核心元数据集大多数的数据元素。 3)元元数据(meta-metadata) 。主要描述元数据实例自身的信息,如元数据 实例的创建者、元数据实例所使用的语言等,注意它不是关于学习对象的信息。 4)技术(technical) 。主要描述学习对象的技术特征,如数据格式、大小、软 硬件要求等,这些特征和学习对象的运行、获取和存储有直接关系。 5)教育(educational) 。主要描述学习对象在教学方面的特征,如终端用户类 型、使用对象、语义密度等,这对于学习资源来说十分重要,是其区分其它资源的 一个重要特征。该类信息的存在有利于教学目标的实现和教学质量的提高。 6)权利(rights) 。主要描述学习对象在使用方面的付费和版权信息。该类信息 和电子商务有较密切的关系。 7)关系(relation) 。主要描述学习对象之间的相互关系。在此基础上可以建立 学习资源网络,为学习者提供全面系统的资源服务,也有利于引导学习者对其它领 6 域产生兴趣。 8)评注(annotation) 。主要描述使用者对学习对象各方面的评价信息。这些评 价信息有利于教师之间交流经验,也同时为学习者提供有用的参考和指导。 9)分类(classification) 。主要描述学习对象和某个或某些分类系统的关系。学 习对象恰当的分类对学习对象的管理、查找都有很大的帮助,但现在缺少统一的分 类方法。 如图 2.1xi,lom 的结构是树状的,每个父类别下面又包含子类别,这种结构 适合利用 xml 文档进行描述。 通用(general) 评注(annotation) 关系(relation) 元-元数据(meta- metadata) lom 规范 技术(technical) 生存期(lifecycle) 分类 (classification) 教育(education) 权利(rights) 8项 3项 4项 11项 2项 3项 7项 4项 3项 图 2.1 lom 结构 在图 2.1 中,lom 被划分为 9 大类、45 小类。虽然通过 xml 文档的方式有助 于对树形结构的元数据信息进行存储和描述,但如果针对每一项元数据信息均为用 户提供录入的接口,无疑将导致应用系统复杂度的陡增,同时过多的元数据信息必 将导致数据冗余。这样既不便于资源的管理,也不易于用户的操作,不利于应用系 统的推广和普及。 学习对象元数据中的数据元素分为必须的数据元素和可选的数据元素,针对以 上问题, 本文对 celts-3 学习对象元数据标准中的核心集进行了研究。 如图 2.2xii, 7 图中的元素即为 celts-3 学习对象元数据标准中必须出现一次或一次以上的元素, 这些元素组成了学习对象元数据的核心集。 lom 核心集 关键字 描述 语种 标识符 标题 通用 生存期贡献 角色 日期 实体 元-元数据 贡献 角色 日期 实体 元数据方案 语种 技术格式 教育学习资源类型 分类 分类单元 目的 图 2.2 lom 核心集结构 核心集的引入把元数据的数目减少到可以控制的范围之内,同时结合资源管理 和用户的需求,引入部分可选数据元素用于丰富对资源进行描述的元数据信息,降 低了应用系统的设计复杂度,有助于系统的推广和标准的采纳,同时又为资源管理 的高效性提供了保证。 2.1.3 内容包装规范 ims 全球联合学习公司提出了内容包装规范(content packaging specification, cp) 。随着网络教育的不断发展,学习内容的共享和互换越来越重要。内容包装规 范的目的就是定义一种能够用来交换学习内容的标准数据结构,为学校和学习资源 8 开发商制作学习内容提供标准数据绑定的基础,从而使学习内容可以在不同的创作 工具、学习管理系统和运行环境之间相互交换和使用。内容包装规范使学习内容成 为可以在多个应用与学习环境之间进行交换和重用的学习单元,有利于不同网络教 育机构之间进行充分的教育资源共享,减少学习内容制作的时间和开销xiii。 下文详细介绍 celts-9 中的内容包装信息模型规范, 该规范中定义了一个内容 包装信息模型, 概念图如图 2.3xiv, 它阐述了内容包装信息模型各组件之间的关系。 包 物理资源(内容文件,媒 体素材,评估文件等) 内容清单 元数据 组织结构 资源引用 (子)内容清单 包交换文件 内容清单文件 实际物理文件 图 2.3 内容包装信息模型概念图 包交换文件(package interchange file) :单独的一个文件(如.zip,.jar,.cab) , 包含一个顶级的内容清单文件,以及该内容清单文件中引用的所有物理文件。包交 换文件是一种通过网络传输结构化信息的简便形式。 包(package) :是一个逻辑目录,包含一个顶级内容清单文件以及各级子目录 中包含的实际物理文件。一个包代表一组可独立使用的学习内容。它可以是课程的 一部分,因为有教学需求而单独提取出来使用;也可以是一门完整的课程或者若干 课程的集合。一个包可以被重新组合或拆分。包应能够独立存在,即它包含了单独 运行或被复用时需要的所有信息。当一个包为了便于传输而被合成一个单独文件 (如.zip,.jar,.cab)时,将会被称作包交换文件。 内容清单(manifest) :内容清单是对有意义的学习资源的描述。一个内容清单 包含了一种或多种静态的学习资源的组织和呈现方式。每一个内容清单实例保存在 一个具有预定义名字的内容清单文件中,包含以下几部分: 1)元数据(metadata)对内容清单作整体描述。 2)组织结构(organizations)描述在内容清单中学习内容的一种或多种组织 9 方式。 3)资源引用(resources)包含了对内容清单中所有实际资源和所需媒体素 材的引用,还包括描述资源的元数据和对外部文件的引用。 4) (子)内容清单零个或多个嵌套的内容清单。 物理资源:一些实际的内容文件、媒体素材、评估文件或其它以文件形式存在 的数据,存放在内容清单所描述的各个子目录下。不同于包,它不能独立发布。在 内容清单中描述的物理文件和内容清单文件一样是包不可或缺的组成部分。 2.2 教育资源标准化模型 在中国网络教育技术标准(celts)的基础上,通过研究 celts-3 的学习对象 元数据信息模型和 xml 绑定规范,针对教育资源学习对象元数据的核心集信息, 为广大高校教师和资源开发人员提供一种标准化录入的理论模型,目的是实现资源 的标准化描述、管理、检索和统计等功能xv。 2.2.1 教育资源标准化录入 模型提供两种途径供用户进行资源信息的标准化录入。一种是用户通过浏览器 访问网络系统平台,进入资源注册模块,以在线填写资源元数据信息的方式,完成 资源的录入; 另一种则是利用基于 java 的本地教育资源标准化工具完成资源元数据 信息的填写和录入。 无论哪种途径,模型均会使用专业术语的方式或通俗易懂的方式或更多其它的 方式对元数据信息项加以描述和说明,用户可以根据个人喜好进行选择,便于不同 类型的用户选择适合自己的方式进行元数据信息的填写。用户输入的教育资源元数 据信息会通过 http 请求的方式提交到服务器端,服务器端将元数据信息绑定成符合 学习对象元数据标准(celts-3)的 xml 文件,并以数据库和文件系统的方式进 行存储,同时保证不同方式下录入信息的一致性。 用户在填写教育资源元数据信息的同时,可以上传符合内容包装规范 (celts-9)的完整资源包或者资源包片断,供用户下载和资源展示。 2.2.2 教育资源标准化描述 在教育资源标准化录入的基础上,模型提供多种描述教育资源的方式,包括教 育资源元数据信息的概要信息、lom 结构树、lom 名值对、xml 文件源代码等。 通过多种方式对教育资源进行标准化描述,方便用户从不同角度查看资源元数据信 息,满足不同类型用户的需求,有利于用户更快更准地定位资源信息。 10 2.3 关键技术概述 本节首先对 j2ee 多层框架体系结构和 mvc 设计模式进行研究, 并对目前最为 流行和被广泛应用的 struts,spring 和 hibernate 框架进行介绍,为第三章模型技术 框架的设计和多层框架的整合提供了理论依据。然后介绍了该系统中被广泛使用的 xml 解析技术和 freemarker 模板引擎,为下文内容作铺垫。 2.3.1 j2ee 简介 j2eexvi是一种利用 java 2 平台来简化企业解决方案的开发、 部署和管理相关的 复杂问题的体系架构。java 2 平台有三个版本,它们是适用于小型设备和智能卡的 java 2 平台 micro 版(java 2 platform micro edition, j2me) 、适用于桌面系统的 java 2 平台标准版(java 2 platform standard edition, j2se) 、适用于创建服务器应用程序 和服务的 java 2 平台企业版(java 2 platform enterprise edition, j2ee) 。 j2ee 技术的基础就是 java 2 平台的标准版,j2ee 不仅巩固了标准版中的许多 优点,例如“编写一次、随处运行”的特性、方便存取数据库的 jdbc api、corba 技术以及能够在 internet 应用中保护数据的安全模式等等,同时还提供了对 ejbxvii、servletxviii、jspxix以及 xml 技术的全面支持。 sun 推出 j2ee 的目的是为了克服传统 client/server 模式的弊病,迎合 browser/server 架构的潮流,为应用 java 技术开发服务器端应用提供一个平台独立 的、可移植的、多用户的、安全的和基于标准的企业级平台,从而简化企业应用的 开发、管理和部署。j2ee 是一个标准,而不是一个现成的产品。各个平台开发商按 照 j2ee 规范分别开发了不同的 j2ee 应用服务器,j2ee 应用服务器是 j2ee 企业级 应用的部署平台。由于它们都遵循了 j2ee 规范,因此,使用 j2ee 技术开发的企业 级应用可以部署在各种 j2ee 应用服务器上。 目前,sun 推出的 j2ee 1.5 已经改名为 java ee 5,相比 j2ee,这不是简单的 改名,java ee 5 中加入了 jsf 这个新的表现层框架,并引入了新的 java persistence 标准和一些新特性。 java ee 5 不再像以前的 j2ee 那样只注重大型商业系统的开发, 而是更关注小到中型系统的开发,简化了这部分系统的开发步骤xx。 2.3.2 mvc 设计模式 mvc(model view controller)模式即模型视图控制器模式xxi,其核心思 想是将整个应用程序划分成相对独立而又能协同工作的三个组件:模型、视图、控 制器,它们各自负责不同层次的任务,相互联系而又彼此独立,组件之间的关系和 11 各自的功能如图 2.4 所示。 模型 封装应用程序状态 响应状态查询 应用程序功能 通知视图改变 控制器 定义应用程序行为 用户动作映射成模型更新 选择相应的视图 视图 解释模型 模型更新请求 发送用户输入给控制器 允许控制器选择视图 状态查询 通知改变 视图选择 用户请求 状态改变 事件方法调用 图 2.4 mvc 组件之间的关系和功能 模型(model) :模型代表企业数据和对数据进行访问的业务规则。它负责对数 据进行处理,被模型返回的数据是中立的,模型与数据格式无关,这样一个模型能 为多个视图提供数据,实现代码复用。 视图(view) :视图是用户看到并与之交互的界面,负责通过模型存取企业数 据,同时确定这些数据如何呈现给用户。对老式的 web 应用程序来说,视图就是由 超文本标记语言(hyper text markup language, html)元素组成的界面,在新式的 web 应用程序中,html 依旧在视图中扮演着重要的角色,但一些新的技术已层出 不穷,它们包括 macromedia flash 和像 xhtml,xml/xsl,wml 等一些标识语 言。 控制器(controller) :控制器接收用户的输入并调用模型和视图去完成用户的 请求。单击 web 页面中的超链接和发送 html 表单时,控制器本身不输出任何东 西和进行任何处理。它只是接收请求并决定调用哪个模型构件去处理请求,然后确 定用哪个视图来显示模型处理返回的数据。 当应用程序中的页面显示、业务逻辑、数据访问等不同层次的代码混合在一起 时,高度的耦合使得代码不便于修改和复用,应用程序将变得难以维护。例如修改 业务层的代码导致表示层和持久层代码的修改,或者增加新的显示页面时导致大量 业务逻辑和数据访问代码的重复等。因此对应用程序进行合理的层次划分显得尤为 12 重要。mvc 设计模式通过良好的组件架构,降低层次之间的耦合度,使应用程序 更易于维护和扩展xxii。 2.3.3 开源框架介绍 框架是一种相对固定的设计模式,是一套代码的集合,为应用程序提供骨架性 的支持。它的合理应用可以让开发人员专注于业务逻辑的实现,并把整个应用程序 划分成若干相对独立的层次,减少了组件间的耦合度,实现代码复用,缩短开发周 期。 对基于 b/s 架构的 j2ee 系统而言, 系统通常被划分为 web 层 (表示层) 、 service 层(业务逻辑层)和 persistence 层(数据持久层)xxiii。针对这三个层次都有很多 的开源技术实现,下文将对本系统中用到的三种框架进行介绍。 strutsxxiv: struts 是实现 mvc 模式的一个应用框架, 它的核心是 actionservlet, actionservlet 是一个通用的控制器组件,扮演 mvc 模式中 controller 的角色。在 struts 中, 一般所有*.do 形式的请求都会提交到 actionservlet 进行处理, actionsevlet 根据 struts-config.xml 中的配置信息,将用户请求封装成一个指定名称的 actionform, 并将此 actionform 传至对应的 action, 由 action 完成相应的业务操作。 struts 利用控制器分离模型和视图,把业务逻辑和用户界面进行分离,将实现 隐藏在接口之后,降低了代码耦合度,简化了开发人员的工作。除此之外,struts 还通过自定义的标签库,对显示逻辑进行良好的封装,实现了显示逻辑代码和页面 的分离。通过 struts 框架的良好应用,能够增强系统的健壮性,重用性和可维护性。 但是 struts 主要是针对表示层设计的,对于业务逻辑层和数据持久层以及事务管理 的支持不是很强,这些都需要开发人员在开发的过程中进行复杂的处理。因此有必 要对 struts 框架进行研究改进,弥补它在业务逻辑层等方面支持的不足,提高开发 人员的编码效率,使开发人员能专心于应用系统的业务逻辑。 hibernatexxvxxvi:hibernate 是一种对象关系映射(object relation mapping, orm)的开源框架,开发人员可以使用面向对象的方式来操作数据库。它的工作原 理是通过配置文件把 java 对象和数据库表之间建立起一个映射关系, 只需要通过操 作这些 java 对象和 hibernate 提供的一些辅助类,就可以达到操作数据库的目的。 hibernate 的目标是成为 java 中数据持久化的一种解决方案, 它负责应用程序与关系 型数据库的交互。hibernate 拥有一种功能非常强大的查询语言 hql,这种语言与 sql 非常相似,而且便于掌握。相对于使用 jdbc 和 sql 来手动操作数据库,使 用 hibernate 极大地减少了数据持久化相关的编程工作量, 让开发人员更专注于业务 逻辑。 spring:spring 是一个开源框架,是为了解决企业应用程序开发复杂性而创建 13 的xxvii。spring 的架构基础是反转控制(inversion of control, ioc)容器和面向切面 编程(aspect oriented programming, aop)xxviii的思想,它提供了管理业务对象的 一致方法并且鼓励面向接口编程的习惯。spring 在持久层对 jdbc 进行了良好的封 装,通过提供相应的模板和辅助类,在一定程度上降低了 jdbc 操作的复杂性。在 实际应用中,spring 对持久层的封装并不一定能满足所有的需求,因此 spring 支持 对 hibernate 和其它 o/r mapping 解决方案的集成。 同时 spring 自身也对 mvc 模式 进行了实现,并提供了对 struts 等框架的支持,用户可以选择适合自己的表示层框 架。 2.3.4 xml 技术 可扩展标记语言(extensible markup language, xml)xxix,它是由万维网协会 (w3c)颁布的一种可扩展的标记语言。xml 将 sgml 的灵活性与广为流传的 html 完美结合,更为简洁且具有良好的兼容性,从而使得现有的 internet 协议和 软件更为协调,方便了相应的数据处理和传输xxx。 与 html 不同的是,xml 语言能把数据与数据表示(例如界面)分开。这种 特性能够让 xml 适合在网络上不同计算环境(无论是不同的操作系统环境,还是 不同的设备显示方式) 中采用一致的信息表示方式。 xml 技术被称作是下一代网络 计算的核心技术,是因为它能够按照一定的语法和词汇表定义各种专业知识,而且 还能够以文本的方式在网络上传递,让各种联网的计算机能够解释这些知识,并协 同工作完成不同的计算任务xxxi。 xml 在网络教育领域也起着支柱性的作用。 一些关键性的网络教育标准比如学 习对象元数据, 内容包装等都定义了各自的 xml 绑定规范, 通过 xml 来描述或包 装教育资源的相关信息。在本文中,所涉及到的教育资源元数据内容信息具有树状 层次结构的特点,以传统的关系型数据库来存储十分困难。而采用 xml 描述教育 资源是技术发展的趋势,也是教育资源元数据的推荐表达方式。因此,教育资源注 册信息和描述信息的表示将以 xml 为主, 并需要应用 xml 存储及解析技术对其进 行管理。 2.3.5 freemarker 模板引擎 freemarker 是一种模板引擎,一种基于模板进行文本的动态输出的通用工具 xxxii。 使用 freemarker,有助于程序员和页面设计人员合理分工,同时易于页面风格的变 换,满足不同种类用户个性化的需求。 14 freemarker 使用纯 java 编写,通过模板语言显示 java 程序提供的动态数据, 生成对应的 html 页面,如图 2.5 所示。 free marker hello $name! . = world; . hello world! . 模板文件 java 对象 输出页面 图 2.5 freemarker 工作原理 将 freemarker 模板引擎融入 struts 框架,同时结合 struts 框架的自定义标签一 起使用,扮演 mvc 设计模式中 view 的角色,能够良好的实现对页面中动态代码的 封装,使应用程序更易于维护和扩展。另外通过其强大的模板语言和 xml 处理能 力,能够简化 xml 的相关操作。 2.4 本章小结 教育资源管理的目的是实现教育资源的充分共享和统一管理,因此前提是要解 决教育资源的标准化问题。本章首先简要介绍了 celts-3 学习对象元数据标准与 celts-9 内容包装规范的基本概念,并针对学习对象元数据的信息模型对其核心集 进行了分析。然后提出了教育资源标准化模型,对教育资源管理系统的业务背景和 标准化录入、 描述的方式进行了探讨。 最后对模型中将使用的关键技术进行了概述。 第三章将对 spring 框架进行深入研究,并提出本模型所采用的技术框架。 15 3 教育资源管理模型的技术框架研究 教育资源管理模型是系统实现的基础, 技术框架的选择对于系统实现尤为重要。 在 j2ee 体系结构的各个层次上都有几种开源框架,可以针对每层选择一种优良的 实现框架,然后对它们进行整合,形成一个完整的 j2ee 开发的基础平台。 第二章提出了该系统的理论基础和标准化模型,并对系统中涉及的关键技术进 行了介绍。本章将研究 spring 框架,并以 spring 框架为核心,研究 struts、spring、 hibernate 三种框架的整合方式,提出模型的技术框架,为第四章模型的设计奠定基 础。 3.1 技术框架选择原则及目标 选择合理的技术框架能够支持快速开发,并且降低开发成本,同时为系统健壮 性、可扩展性和可维护性提供强有力的保证。根据本模型的具体需求,技术框架的 选择有以下三个原则: 1)技术框架合理性。技术框架合理性是最基本的要求,选择技术框架时应把系 统稳定性放在第一位进行考虑,没有必要去追求最新的技
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2026学年嘉兴市海宁市三上数学期末达标检测模拟试题含解析
- 2025-2026学年甘肃省张掖市民乐县数学三上期末质量检测试题含解析
- 2024年滦县三上数学期末达标检测模拟试题含解析
- 公司法律制度研究课件
- 主管护师考试的有效试题及答案
- 疾病预防卫生资格考试试题及答案
- 行政管理专科动态评估试题及答案
- 自考行政管理反馈机制试题及答案解读
- 行政管理2025年自考基础打底试题及答案总结
- 自考行政管理个案分析试题及答案总结
- 2025年高考政治三轮冲刺:短评类主观题练习题(含答案)
- 《嵌入式系统中断》课件
- 计算机视觉在自动驾驶系统中的应用-全面剖析
- 【MOOC】国际交英文写作-湖南大学 中国大学慕课MOOC答案
- GB/T 625-2024化学试剂硫酸
- 国家八年级数学质量测试题(六套)
- 餐饮油烟污染防治承诺书
- GB∕T 13554-2020 高效空气过滤器
- 6se70手册制动单元
- 幼儿园环境创设评分表
- 单位换算练习题 全
评论
0/150
提交评论