MVC模式在高校教务管理系统中的应用.pdf
M V C 模式在高校教务管理系统中的应用王进博,丁振国(西安电子科技大学 计算机学院,陕西 西安 7 1 0 0 7 1)摘要介绍了M V C 模式及其在基于W e b 信息管理系统开发中的 应用概况,并结合高 校教务管理系 统的设计实例,探索了 一种M V C 模式在W e b 应用中的实现方式。最终结果令人满意。这种方式不仅实 现简 单,而且便于系统的开发和代码维护。关键词 M V C;中图分类号 W e bC 9 3 1;教务管理系 统.9A p p l i c a t i o n o f t h e MV C Mo d e l i n t h e U n i v e r s i t y E d u c a t i o n a l A d mi n i s t r a t i o n Ma n a g e me n t S y s t e m Wa n g J i n b o,D i n g Z h e n g u o (S c h o o l o f C o m p u t e r S c i e n c e a n d E n g i n e e r i n g,X i d i a n U n i v e r s i t y,X i a n 7 1 0 0 7 1 C h i n a)A b s t r a c t T h i s p a p e r f i r s t i n t r o d u c e s t h e MV C Mo d e l a n d i t s a p p l i c a t i o n i n We b b a s e d i n f o m a n a g e m e n t s y s t e mT h e n i t a t t e m p t s a n a p p r o a c h t o t h e r e a l i z a t i o n o f t h e MV C Mo d e l i n w e b a p p l i c a t i o n s o n t h e b a s i s o f t h e d e s i g n o f t h eu n i v e r s i t y e d u c a t i o n a l a d m i n i s t r a t i o n m a n a g e m e n t s y s t e m.T h e u l t i m a t e r e s u l t o f t h e e x p e r i m e n t i s s a t i s f a c t o ry.T h i sa p p r o a c h i s e a s y i n i m p l e m e n t a t i o n c o n v e n i e n t f o r s y s t e m d e v e l o p m e n t a n d m a i n t e n a n c e.K e y w o r d s MV C;w e b;e d u c a t i o n a l a d m i n i s t r a t i o n m a n a g e m e n t s y s t e m1 引言 随着计算机技术和网络技术的快速发展和日益成熟,基于WE B的信息管理系统应运而生。由于B/S(B r o w s e r/S e r v e r)结 构具 备开发 简单、无 需专门的客户端软件等天然优势,在一些领域已经取代传统的C/S(C l i e n t/S e r v e r)结构,成为管理软件开发的首选。在 W e b 应用开发从简单 H T M L的静态内容到动态信息的发展过程中,传统的W e b 应用开发模式 (如A S P 和P H P)对于复杂系统开发缓慢、软件重用性差、维护困难等缺点日 益暴露出来,而由S U N公司倡导、多家公司参与建立的J S P 技术由于其良好的可移植性、健壮性、可重用性和安全性以及灵活的组件机制等优点而广受We b 开发人员的欢迎。收稿日期:2 0 0 5-1 0-1 1作者简介:王进博(1 9 8 1 一),男,硕士研究生。研究方向:计算机网 络与信息处理技术。丁振国(1 9 5 9-),男,博士生导师。研究方向:计算机网络与信息处理技术、电子商务中的网络技术和远程教育技术。尤其对于大型W e b 应用系统,利用J S P 技术和J 2 E E平台的紧密集成,采用M V C设计模式进行开发可以很好地解决上述问题。2 M V C 模式简介 M V C(M o d e l-V i e w-C o n t r o l l e r),即“模型一 视图一 控制器”模式,最早是X e r o x 公司在二十世纪八十年代为编程语言 S m a l l t a lk-8 0发明的一种软件设计模式,目 的是实现D e s k t o p 程序中的数据模型和用户界面程序代码的分离。最近几年被推荐为 S u n公司J 2 E E平台的设计模式,并且越来越受到开发者的欢迎。MV C 的基本思想就是实现系统中显示逻辑、控制逻辑和数据(业务)逻辑的分离,因此它把应用程序分为 3种对象类型:模型(M o d e l)用于维护数据并提供数据访问方法,视图(V i e w)是用于绘制模型的部分数据或所有数据的可视图,控制器 (C o n t r o l l e r)则定义了用户界面对用户输入的响应方 式 2 1。30 种 对 象 类 型的 交 互关 系 如下 面图1 所 示。M V C 模式在高校教务管理系统中的应用图1 M V C 对象交互关系图 由 于M V C是思想而不是技术,因此在不同的应用领域里其对于 MV C模式的描述往往不同,基于M V C思想的技术方案更是多种多样。在W e b 应用开发领域,比较流行的模型是模型2(M o d e 1 2),它由J S P.S e r v l e t 和J a v a B e a n 等3 个主要元素组成3 1。其中,J S P 用 于生 成H T M L 页 面,并 返回 给 客户端,完成数据显示,对应于M V C模型中的V i e w;S e r v l e t 用于接收用户请求,并根据不同 请求调用不同的J a v a B e a n 进行业务处理,对应于C o n t r o l l e r;J a v a B e a n 通过J D B C与数据库建立连接,并完成系统中 所 有的 业 务 处 理,对 应 于M o d e l 。其 具 体结构如下面图2 所示。用学校和学院的二级管理,学院管理人员负责具体业务工作,维护基本的数据信息,从而发挥学院在本科生 教学过程中的重要作用;(3)本科教学是一个延续的过程,从招生到毕业,各个阶段的数据复杂、种类繁多,但相互之间具有很强的联系,本系统采用招生录取信息库、在校学生库和毕业生信息库的多库设计方法,这样既可以保持数据的一致性,同时也可以提高对数据库访问的效率;(4)高校的管理措施不断变化,因此要求系统具有较强的 可扩展性和升级能力。3.2高校教务管理系统架构设计 根据系统的应用需求,对系统总体构架进行了设计,如图3 所示。国囚曰We b 服务器We b S e r v e r/A p p l i c a t i o n S e r v e r D a t a b a s e图2 M V C 模型 2 结构图教务信息系统3 M V C 模式在高校教务管理系统中的应用3.1高校教务管理系统应用需求 高校教务管理系统是校园信息化进程中一个关键的组成部分,其主要设计目的就是简化管理人员的管理工作,同时为学生提供全方位的服务。本系统构造了一个基于网络的,数字化和智能化有机结合的 教育环境和管理环境,并且在这个环境中架起了一座新的、开放的教学教务管理工作平台。本系统主要特点和要求如下:(1)因为要面向学校所有的本科生,因此需要考虑两万左右数目 的用户同时在线的问题;(2)为了确保数据的准确性和一致性,满足不同部门之间、不同业务之间的数据共享,本系统采 I O r a c le 9 i 数 据 库!图3 教务信息系统总体架构图3.3系统技术实现 高校教务管理系统是一个业务功能比较繁杂,而且随时有可能进行修改和升级的系统。其特点和要求已经决定了采用传统的 We b开发模式进行开发不但开发时候会很困难,而且升级维护更是不可行,因此本系统的设计开发借用了MV C的思想,采用了J S P+S e r v l e t+J a v a B e a n的方式。下面以查询成绩模块为例说明具体实现的技术结构,查询成绩模块处理流程如下面图4 所示。其工作流程为:1)查询成绩请求,由 浏览器将用户的查询成绩请求发肠 I T A g e/J u n.1 5,2 0 0 6M V C 模式在高校教务管理系统中的应用送给S e r v l e t;2)调度请求,S e r v l e t 解析用户操作请求,然后调用成绩管理操作B e a n 进行成绩查询;8 湿示 图4 查询成绩模块处理流程图3)查询,成绩管理操作B e a n 接收到S e r v l e t 的调度请求以后进行对应操作,首先需要根据操作要求进行数据库的查询,得到符合要求的成绩记录;4)更新,成绩管理操作 B e a n将从数据库中读出的成绩数据以对象列表的形式写入成绩实体B e a n 中;5)返回查询结果,成绩管理操作 B e a n将查询的结果返回给S e r v l e t(如查询失败,没有符合要求的成绩记录);6)重定向,S e r v l e t 根据成绩管理操作B e a n返回的操作结果进行显示页面的重定向(如查询失败则定向到显示错误信息的J S P 页面,查询成功就定向到正常显示查询结果的J S P 页面);7)访问,J S P 页面在生成静态H T ML 代码时先访问成绩实体B e a n,从中取得需要显示的成绩数据;8)显示,J S P页面编译生成静态 H T ML代码后返回给客户端的浏览器,浏览器将其显示出来给用户。在这个设计里,S e r v l e t 是处理的中心,完成整个系统的调度工作,对应于 MV C 模式中的C o n t r o l l e r;J S P 页面用于数据的 显示,对应于M V C模式中的 V i e w;实体 B e a n和操作 B e a n都是J a v a B e a n,对应于 M V C模式中的Mo d e l,其中,实体B e a n 也叫数据B e a n,主要用于保存从数据库中取到的 数据,操作B e a n 也叫逻辑B e a n,用于系统业务逻辑的实现。3.4控制器的设计和实现 M V C在不同 领域有不同的实现方式,在 W e b开发领域,上述 Mo d e 1 2及其变种已 经广为流行。它们与传统的M V C模型是有区别的,传统的MV C模型中,模型的数据有所变化需要通知视图改变状态,而在 M o d e 1 2中,由 于 H T T P协议不保持客户端和服务器的链接,因此任何视图状态的变化都需要控制器来进行控制,控制器(即S e r v l e t)就显得尤为重要,不同MV C模式的实现的区别也主要体现在S e r v l e t 的设计上。极端的 情况下,整个系统的控制器可以用一个整个的S e r v l e t 类来实现,可是这样做造成这个类非常庞大,代码也过于冗长,给维护带来困难;也有的系统对于每一个子模块都用一个S e r v l e t 类来实现控制器的功能,也就是说对于每个请求都建立单独的S e r v l e t 类进行控制,这样做简化了 每个S e r v l e t 的 代码,但是带来新的问题,那就是整个系统内 控制器数量过多,同样对代码维护不利。本系统的实现采用折中的方法,即一个逻辑上独立的功能模块用一个S e r v l e t 类来进行控制,如图5 所示。.-一-一一.曰.一.用户操作B e a n 卜一争-.图5 用户管理 S e r v l e t 设计示意图这样做即简化了每个S e r v l e t 的代码,同时也使得S e r v l e t 类的 数量不至于多得难以维护。电子科技/2 0 0 6 年6 月巧 日 7 7M V C 模式在高校教务管理系统中的应用4 结语 在W e b 信息系统越来越大型 化、复杂化的 今天,传统的开发模式已经越来越难以胜任系统的开发和代码的维护。MV C模式的优势已经越来越显现出来,目 前也得到了比较广泛的应用。提出的在高校教务系统中MV C模式的实现方式具有实现简单、环境搭建容易、易于理解和掌握等优点,实际应用中取得了不错的效果。参考文献1张计龙,张成洪,张凯.基于改进 M V C的高校人事管 理系统 J .计算机工程,2 0 0 4,3 0(4):1 9 1.1 9 32沈海燕,高梅.基于 M V C模型的远程教学答疑系统的 设计与实现J l 苏技术师范学院学报 2 0 0 3(6):4 6 -5 0.3何成万,余秋惠.M V C 模型2 及软件框架S t ru t s 的研究 J .计算机工程,2 0 0 2,2 8(6):2 7 4 -2 7 5.4戴朝晖,吴敏.基于M V C模式的W e b 管理信息系统分 析与设计 J .中南工业大学学报(自 然科学版),2 0 0 3(8):41 3 -41 5.王中林教授在纳米研究中的重大成果 世界最小发电机问世 科学时报l 北京4 月1 3日 讯(记者王丹红)美国 佐治亚理工学院教授王中 林等在4 月1 4 出 版的 科学 杂志上报告说,他们成功地在纳米尺度范围内 将机械能转换成电能,研制出 世界上最小的发电 机一 一 谁 内 米发电 机。国际纳米技术领军人物、哈佛大学 教授C h a r l e s L i e b e r 说:“该论文所描述的工 作极其令人振奋,因 为它 提出了 解决纳米技术中 一个关 健问 题的方案,那就是如何为许多研究组发明的纳米器件提供电力的问 题。王教授利用他先创的氧化锌纳米线将机械能转化为电能,在这个问 题上显示了 他巨大的创造性。”美国西北太平洋国家实 验室的材料学家刘俊说:“这是纳米技术领域的一项重大突 破,它的影响将是深刻的、深远的。”正在北京的王中 林在接受 科学时报采访时说,“这是我在这个研究领域 1 0 多年最让我激动的发明”。他认为这是国际纳米领域最让人激动的重大发现,它一定会引起整个纳米学界对纳米电源方面研究的巨大热潮。作为 佐治亚理工学院校董事讲座教授和工学院讲座教授,王中 林同时也是北京大学工学院先进材料和纳米技术系 主任、中国国家纳米科学中心海外主任,这项工作是他和博士生宋金会共同完成的。因为具有尺寸微小、功耗小、反应灵敏等宏观器件所不具有的独特优势,纳米器件一直是纳米学术界最前沿、最活跃的领域。如果能真正让这些微小器件工作起来,那么必须要给它们输入电能,而只有实 现了自 带电源的纳米器件才可被视为真正的纳米系 统。又因为纳米系 统具有微小而且可植入体内等特性,所以它的供电系 统必须是小型化的。不过,目 前的研究只是集中于纳米器件的本身,而没有考虑为这些纳米器 件输入电源的问 题。发电 是需要能量的。人在走路、呼吸时会产生能量,那么能否将人体自 身产生的能量转化为纳米器件所需要的电能?王中 林想到了 这个主意,他说:“如果有一种微型的装置能将生物体内的生物能量转化为电能 输送给纳米器件,同步实 现器件和电源的小型化,是最为理想的事。”王中林和宋金会利用竖直结构的氧化锌纳米线的独特性质,在原子力显微镜下研制出将机械能转化为电能的纳米发电机,这是目 前世界上最小的发电装置。王中 林解释说,压电效应是一种由材料中的力学形变而导致的电 荷极化的效应,它是实 现力电 藕合和传感的重要物理过程,而氧化锌纳米线有容易弯曲的特性,可以在纳米线内外部分别造成压缩和拉伸;竖直生长的氧化锌是纤锌矿结构,同时具有半导体性能和压电效应。氧化锌纳米线的这种独特结构导致了弯曲纳米线的内 外表面产生极化电 荷,他们用导电 原子力显微镜的探针弯曲单个氧化锌纳米线,输入机械能,再利用氧化锌的半导体性质将其纳米线的压电特性藕合起来,从而将电能暂时 储存在纳米线内,然后再用导电的原子力显微镜探针接通这一电源,向外界输电,从而完美地实 现了 纳米尺度的发电功能。他说:“更重要的是,这一纳米发电机竟然能达到 1 7%能3 0%的发电效率,为自发电的纳米器件莫定了物理基础。”王中 林早在 7 年前就认识到氧化锌独特的半导体、光学和生物学性能,具有其他纳米材料不可替代的作用,因此,他的研究小组一直致力于以氧化锌为基础的纳米材料的合成和应用研究。2 0 0 1 年,他们在 科学杂志上报告首次合成氧化锌半导体材料带,这篇论文已 被引用 1 1 0 0 多次。之后,他们又研制出纳米环、纳米螺旋等器件。王中.林相信纳米发电 机无论在生物医学、军事、无线通信和无线传感方面都将有广泛的重要应用。他说:“这一发明可以整合纳米器件,实 现真正意义上的纳米系 统,它可以收集机械能,比如人体运动、肌肉 收缩、血液流动等所产生的能量;震动能,比如声波和超声波产生的能量;流体能量,比如体液流动、血液流动和动脉收缩产生的能量,并将这些能量转化为电能提供给纳米器件。这一纳米发电机所产生的电能足够供给纳米器件或系统所需,从而让纳米器件或纳米机器人实现能量自 供。”来源:科学时报7 8 I T A g e/J u n.1 5,2 0 0 6