(计算机应用技术专业论文)基于mvc的学生管理信息系统的设计与实现.pdf_第1页
(计算机应用技术专业论文)基于mvc的学生管理信息系统的设计与实现.pdf_第2页
(计算机应用技术专业论文)基于mvc的学生管理信息系统的设计与实现.pdf_第3页
(计算机应用技术专业论文)基于mvc的学生管理信息系统的设计与实现.pdf_第4页
(计算机应用技术专业论文)基于mvc的学生管理信息系统的设计与实现.pdf_第5页
已阅读5页,还剩59页未读 继续免费阅读

(计算机应用技术专业论文)基于mvc的学生管理信息系统的设计与实现.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

大连理上火学硕士学位论文 摘要 随着我国教育产业化的飞速发展,社会对教育水平和教学管理软硬件的要求日益提 高,尤其是对学校的教学管理提出了更多的要求。为了及时响应教师和学生的需求,为 师生提供相关服务,营造一个高效、便捷的校园环境,设计一套适合基于高校校园网络 的管理信息系统势在必行。 本文在研究分析m v c 架构、j 2 e e 开发平台等先进技术的基础上,提出了一种 f r e e m a r k e r + w e b w o r k + s p r i n g 集成框架实现的j 2 e e 多层架构,并在此基础上设计实现 了一个基于m v c 的高校学生管理信息系统。这对其它基于j 2 e e 平台的w e b 应用系统 具有一定的借鉴作用。 在系统开发中,利用控制器分离了模型和视图,达到层间松散耦合的效果,从而提 高了系统的灵活性、复用性和可维护性。系统的控制层采用w e b w o r k 框架,由a c t i o n 负责存储数据或状态并且执行逻辑处理。在a c t i o n 被执行之前使用默认的拦截器和自定 义的拦截器来决定a c t i o n 是否被执行或者如何执行,并利用拦截器完成安全、日志和校 验等一系列工作。在表现层利用f r e e m a r k e r 技术接收显示w e b w o r k 返回的动态信息, 为统一系统页面的风格,定义了很多宏,复用重复的代码,提高工作效率。在业务逻辑 层采用轻量级容器s p r i n gi o cc o n t a i n e r 管理业务对象s e r v i c e ,在数据持久层运用j d b c t e m p l a t e 对数据库访问中的复杂部分进行封装,降低数据库操作的复杂性。 本文完成了教学信息管理子系统、学籍管理子系统和考勤管理子系统的设计和实现 工作,通过测试和调试后,在全校范围内上线试运行,运行结果表明本系统采用的技术 路线正确,设计的方案合理。 关键词:学生管理信息系统;w c ;w e b w o r k ;f r e e m a r k e r ;s p rjn g 基于m v c 的学生管理信息系统的设计与实现 d e s i g na n di m p l e m e n t a t i o no f s t u d e n tm a n a g e m e n ti n f o r m a t i o n s y s t e mb a s e do nm v c a b s t r a c t a st h er a p i dg r o w t ho fe d u c a t i o n a ls y s t e mi nc h i r i l l ,p e o p l ed o wh a v em o r ed e m a n d so n t e a c h e r sk n o w l e d g el e v e la n dt h ew a yo ft e a c h i n gm e t h o di n c l u d i n gb o t hh a r d w a r ea n d s o f t w a r e h o w e v e r , t h em a n a g e m e n to ft e a c h i n gm e t h o dr e c e i v e sm o r ed e m a n d st h a no t h e r s i no r d e rt os a t i s f yt h o s ed e m a n d sa n d p r o v i d er e l a t i v es e r v i c e sf o rb o t ht e a c h e r sa n ds t u d e n t s , a sw e l la st oc r e a t eah i g he f f i c i e n ta n dc o n v e n i e n te n v i r o n m e n t a li nc a m p u s , aw i d er a n g e u s eo fw e b s y s t e mf o ra l lc o l l e g es t u d e n t sb e c o m e sa m u s t b a s e do i l t h em o d e mt e c h n o l o g yo fm v ca n dj 2 e es t u d y ,m u l t i - l a y e rs t r u c t u r eo fj 2 e e w h i c hh a sb e e nr e a l i z e db yf r e e m a r k e r ,w e b w o r ka n ds p r i n gh a sb e e nb r o u g h tf o r w a r d ,t h e m a n a g e m e n ti n f o r m a t i o ns y s t e mf o ra l lc o l l e g es t u d e m sw h i c hb a s e do nm v ch a sb e c a d e s i g n e da n di m p l e m e n t e di n t h i sc h a p t e r t l l i sw i l lu s ef o rr e f e r e n c ef o ro t h e rw e b a p p l i c a t i o n ss y s t e mb a s e do nj 2 e ep l a t f o r m i nt h ep r o c e s so fs y s t e md e v e l o p m e n t c o n t r o l l e ri su t l i z e dt os e p a r a t em o d e la n dv i e wi n o r d e rt oe f f e c tl o o s e l yc o u p l e dl a y e rt oi m p r o v et h es y s t e m sf l e x i b i l i t y ,r e u s a b i l i t ya n d m a i n t a i n a b i l i t y s y s t e m i sc o n t r o l l e db yw e b w o r kw h i l ed a t ao rs t a t u sa n dl o g i cp r o c e s s a r ee n f o r c e db y a c t i o n ”d e f a u l ti n t e r c e p t o r sa n di n t e r c e p t o r sw e r eu s e dt od e c i d e w h e t h e ro rh o wt oc a r r yo u tt h e a c t i o n b e f o r e “a c t i o n w a se x e c u t e d i n t e r c e p t o r sw e r e i nu s et oc o m p l e t eas e r i e so fs e c u r i t y ,a n dl o g sa n dc a l i b r a t i o nw o r k t or e c e i v ea d y n a m i cd a t af r o mw e b w o r ki sb yu s i n gt h et e c h n o l o g yo ff m e m a r k e r i nt h ep e r f o r m a n c e m a n ym a c r o sw e r ed e f i n e dt ou n i f yt h es t y l eo fs y s t e mp a g e s ,r e l l g go fc o d ed u p l i c a t i o na n d i m p r o v ee f f i c i e n c y al i g h tw e i g h tt o o lc a l l e d s p r i n gl o cc o n t a i n e r i su s e dt om a n a g e “s e r v i c e i nt h eb u s i n e s sl o g i c a tl a y e r a n dj d b ct e m p l a t ei su s e df o rb l o c k i n gs o r n e c o m p l e xa r e a sf r o md a t a b a s ea n dd e c r e a s et h ec o m p l e x i t yo fi t sp r o c e s s i nt h i sp a p e r , t h ew o r ko fd e s i g na n di m p l e m e n to ft e a c h i n gi n f o r m a t i o nm a n a g e m e n t s u b s y s t e m s ,s c h o o lm a n a g e m e n ts u b s y s t e m sa n da t t e n d a n c em a n a g e m e ms u b s y s t e m s i s c o m p l e t e d t h es y s t e mh a sb e e np r e l i m i n a r yr u ni nc a m p u sb yt e s t i n ga n dd e b u g i n g t h er e s u l ti n d i c a t e st h a tt h ed i r e c t i o no f t h i st e c h n o l o g ys t u d yi sc o r r e c ta n dt h ed e s i g no f t h i s p r o g r a mi se s s e n t i a l k e yw o r d s :s t u d e n tm a n a g e m e n ti n f o r m a t i o ns y s t e m ;m v c ;w e b w o r k ;f r e e m a r k e r : s p r i n g 独创性说明 作者郑重声明:夺硕士学位论文是我个人在导师指导下进行的研究工 作及取得研究成果。尽我所知,除了文中特别加以标注和致谢的地方外, 论文中不包含其他人已经发表或撰写的研究成果,也不包含为获得大连理 工大学或者其他单位的学位或i 正- f ;所使用过的材料。与我一同工作的同志 对本研究所做的贡献均已在论文中做了明确的说明并表示了谢意。 人连理t 大学硕士研究生学位论文 大连理工大学学位论文版权使用授权书 本学位论文作者及指导教师完全了解“大连理工大学硕士、博士学位 论文版权使用规定”,同意大连理工大学保留并向国家有关部门或机构送 交学位论文的复印件和电子版,允许论文被查阅和借阅。本人授权大连理 工大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,也 可采用影印、缩印或扫描等复制手段保存和汇编学位论文。 作者龇蛔盗到 跏繇茸纽躯 兰! 兰年三月l 日 大连理工大学硕十学位论文 1绪论 1 1 课题研究背景 随着我国教育产业化的飞速发展,社会对教育水平和教学管理软、硬件的要求r 益 提高,尤其是对学校的教学管理提出了更多的要求。因此,教育系统尤其是大学不仅首 先要有坚实的硬件基础,还要有一整套完善的教学管理软件,以便在学校内实施良好的 完善的管理且以最快地速度响应教师和学生的需求,及时提供服务,为学校师生提供一 个高效、便捷的环境。 辽宁省交通高等专科学校围绕这一任务不断进行方式上的探索、实验和实践。经过 摸索,教学管理系统逐步形成规模,赢得了师生的认可。随着现代网络技术的迅猛发展, 互联网的日益普及,目前的系统逐渐不能满足教学管理的要求,主要表现在以下几点: ( 1 ) 开发出来的系统之间比较孤立,教学与学生工作系统分离,从事教学工作和学 生工作的教师之间的信息沟通很不方便,教师与学生之间也缺乏一个理想的沟通平台。 ( 2 ) 系统中没有为学生提供相应的服务,没有真正做到以学生为中心。 ( 3 1 系统的可扩展性差,随着学院壮大,学生人数增多,原有的系统不能很好地满 足需求。 ( 4 ) 数据的安全性差,没有单独的数据库服务器,数据的安全性没有保证。数据库 设计的权限管理不明确。 为了克服原系统中上述的种种弊端,就必须对原有的系统进行有效的改进和整合。 因此,我们采用了w e b 技术建立一套完善的高校学生管理系统,来保证学生和教师及 时快速地获取各方面的有用信息。建立真正意义上的以学生为中心的教学模式。 1 2 技术背景 在目前的w e b 应用程序设计中,以单纯的a s p j s p s e l e t 代码构建的基于服务器 端运行的系统占大多数。但这样的系统有一个共同的缺陷,就是当业务逻辑越来越复杂 的时候,系统构建所带来的复杂度和所耗费的成本将进一步提升,由于结构的不清晰所 带来的系统可读性也进一步降低,后期的维护和扩展难度进一步增加。鉴于此,在j 2 e e 领域,业界通常采用在s e r v e r 集成一些可复用的组件技术来使得系统结构清晰化,以及 实现软件的可复用、可扩展和高效率。 在软件开发领域这种思想的一个应用便是m o d e f v i e w c o n t r o l l e r ( m v c ) 技术。模型- 视图控制器( m v c ) 是8 0 年代s m a l l t a l k 8 0 出现的一种软件设计模式,“它为那些需 基丁m v c 的学生管理信息系统的没计与实现 要为同样的数据提供多个视图的应用程序而设计的,很好地实现了数据层与表示层的分 离,特别适用于开发与用户图形界面有关的应用程序”i lj 。 近年来,m v c 模式被推荐为到s u n 公司的j 2 e e 平台的设计模式。在基于j 2 e e 的应用开发中m v c 模式利用控制器来分离模型和视图,达到层间松散耦合的效果,从 而提高系统的灵活性、复用性和可维护性等。 w e b w o r k 是由o p e n s y m p h o n y 组织开发的,致力于组件化和代码重用的m v c 模式 j 2 e ew e b 框架。w e b w o r k 结构简单易于扩展,标签库易于定制,前端拦截器非常出色, “w e b w o r k 支持多种表现层技术,从而给开发更多的选择,提供了更好的适应性”【2 】。 s p r i n g 框架是由r o d j o h n s o n 创立的另一个开放源码的应用框架,“它为j 2 e e 应用提供 了一个基础结构,另外还提供了许多使用j 2 e e 相关技术工具的支持”p j 。 本系统采用f r e e m a r k e r + w e b w o r k + s p r i n g 集成框架,这个架构实现了m v c 开发模 式,使系统的表示层、业务逻辑层和数据库服务层之间的耦合度很低,可以实现修改少 量代码就完成对系统功能的增减和数据库服务器的更改。 1 3 课题研究意义 一个经过精心组织、科学设计与丌发的先进的学生管理信息系统,不但可以提高管 理的效率,而且系统本身也能反映高校管理文化,它“体现了一定的管理哲学和理念, 规定和规范了项目管理的工作流程” 4 1 ,甚至可以将有关的组织体系和管理责任制等软 科学的东西融合到系统功能中,使“系统具有功能齐全、职权明确的特点”【4 j 。管理人 员通过使用这套系统,可以摆脱一些烦琐的手工劳动,职责明确、心情舒畅的开展工作, 达到一些意想不到的管理效果。另外作为学校主体的老师和学生,通过使用该系统,迅 速获取来自学校和系部的各种信息,加强沟通和交流,达到教与学的和谐。 本系统以学校优厚的网络资源为基础,为教师提供了一个对各种有用信息进行管理 的平台,也为师生提供了一个沟通的渠道。通过这个系统可以将有用信息及时发布,保 证学生准确地了解系里的各种信息。教师和学生也可以通过该系统实现教与学的互动。 利用计算机技术和网络技术丌发应用系统管理教学工作,大大提高了管理效率,降低了 工作量,并能保证数据的共享和安全性,这在高校管理实践中具有重要意义。 1 4 本文研究内容和方法 本文介绍了辽宁交通高等专科学校学生管理信息系统的现状,结合管理信息系统现 有的构建技术以及体系结构进行分析,找出不足,提出一种基于m v c 的设计模型,并 通过f r e e m a r k e r + w e b w o r k + s p r i n g 技术对现有系统进行改进和扩展。研究目的是开发一 大连理,i :人学硕十学位论文 个以学生为中心的、安全性好、易扩展的、动态交互性强的管理信息系统,它包括信息 发布和浏览、学生信息管理、教师信息管理、考勤管理、党建园地等功能,为师生提供 一个交流沟通的平台。 本文的研究内容主要分为以下三个部分: ( 1 ) 研究和分析了m v c 模式的原理和优缺点,从理论上对在开发基于j 2 e e 多层 w e b 应用中采用m v c 架构模式的必要性做了论述。 ( 2 ) 对信息实现技术进行分析和比较,提出基于w e b w o r k 和s p r i n g 框架整合的方 案构建信息系统。 ( 3 ) 对学生管理信息系统进行了需求分析和设计,给出了基于m v c 模式的j 2 e e 应 用一学生管理信息系统的解决方案,并应用框架技术对系统进行开发。 ( 4 ) 选择合适的测试方法设计测试用例,保证系统的使用质量。 本文以理论和实践相结合为指导原则展开研究,主要的研究方法如下: ( 1 ) 检索法 通过电子检索和手工检索两种方式搜集有关理论和实践等方面的专著和论文,为课 题的研究提供理论基础。一是通过交专和大工图书馆、学院资料室借用相关资料;二是 通过学术期刊网、中国优秀硕博论文数据库、万方学位论文数据库、e l s e v i e r 全文电子 期刊、e b s c o ,s p r i n g e r l i n k 等国内外数据库查找有关w e b 系统构建和应用的相关资料。 三是通过百度、g o o g l e 等搜索引擎收集国内外w e b 构建技术的相关信息和论文资料。 ( 2 ) 比较研究法 在学生管理信息系统实现技术的选择和体系结构的确定上采用了比较研究法,将基 于m v c 的w e b 技术进行对比、分析,确定了将各种技术相互融合的思路,最终结合课 题的具体要求确定了系统的设计方案。 ( 3 ) 原型开发法 学生管理信息系统使用f r e e m a r k e r 、j a v a 、s e r v l e t 等作为开发工具,以m v c 作为 设计模型,以“原型开发法”对学生管理信息系统进行开发。通过后期测试以及上线运 作检验,改进系统功能,逐步将系统原型进化成最终系统。 基丁m v c 的学生管理信息系统的殴计与实现 2 系统的w e b 应用框架设计 m v c 作为一种架构模式,有很多框架实现它,像s t r u t s 、w c b 、r k 、s p r i n g 、j s f 等。“j 下确选择适合于项目的开发框架有利于提高工作效率和系统质量”1 5 1 。本章分析 和研究了w e b w o r k 框架、s p r i n g 框架和f r e e m a r k e r ,阐述其m v c 模式的设计思想, 并讨论了在构建学生管理信息系统的过程中这些框架的整合运用。 2 1m v g 架构模式 2 1 1m v g 架构模式概述 “m v c 架构模式将一个应用分为三个不同的部分,m o d e l ( 模型) 、v i e w ( 视图) 和c o n t r o l l e r ( 控制器) ,这三个部分以最少的耦合协同工作,从而提高应用的可扩展性及 可维护性。” 6 1 m o d e l 表示业务数据,或者业务逻辑,代表组件状态和低级行为的部分,它管理着 自己的状态并且处理所有对状态的操作,m o d e l 自己本身并不知道使用自己的v i e w 和 c o n t r o l l e r 是谁,系统维护着它和v i e w 之间的关系,当m o d e l 发生了改变系统还负责通 知相应的v i e w 。 v i e w 是应用程序中用户界面相关的部分,是用户看到并与之交互的界面。代表了 管理m o d e l 所含有的数据的一个视觉上的呈现。一个m o d e l 可以有个以上的v i e w 。 c o n t r o l l e r 工作就是根据用户的输入,控制用户界面数据显示和更新m o d e l 对象状 态。管理着m o d e l 和用户之问的交互控制。它提供了一些方法去处理当m o d e l 的状态发 生了变化时的情况。 m v c 组件类型的关系和功能如图2 1 所示。 m v c 模式的出现不仅实现了功能模块和显示模块的分离,同时“它还提高了应用 系统的可维护性、可扩展性、可移植性和组件的可复用性”【7 j 。 2 1 2m v c 的特点 m v c 的优点表现在以下几个方面: ( 1 ) 多个视图能共享一个模型,减少代码的复制和代码的维护,而且便于后期的维 护工作,降低维护成本。 ( 2 ) 模型返回的数据没有进行格式化,所以同样的模型数据能应用不同的显示技术, 满足不同的用户界面需求。 4 一 大连理1 :人学硕+ 学位论文 ( 3 ) 因为模型是自包含的,并且与控制器和视图相分离,所以很容易改变应用程序 的数据层和业务规则。 + 方法调用一卜事件 图2 1m v c 组件类型的关系和功能 f i g 2 1 r e l a t i o na n df u n c t i o no f m v c d i s c r e t e n e s st y p e ( 4 ) 使用工程来联接不同的模型和视图去完成用户的需求,这样控制器可以为构造 应用程序提供强有力的手段。给定一些可重用的模型和视图,控制器可以根据用户的需 求选择模型进行处理,然后选择视图将处理结果显示给用户。 ( 5 ) m v c 方便多开发人员间的分工,不同的层各司其职,有利于通过工程化和工具 化管理程序代码。 m v c 也存在不足之处,主要表现在以下几个方面: ( 1 ) 清晰的构架以代码的复杂性为代价,对小项目严格遵循m v c 模式,使视图、 控制和模型彻底分离,会“增加结构和实现的复杂性,可能反而降低开发效率”1 8 】。 ( 2 ) 由于模型和视图要严格的分离,这样也给调试应用程序带来一定的困难。每个 构件在使用之前都需要经过彻底的测试。 从上面可以看出w e b 应用程序的设计开发是复杂并且费时的,所以采用m v c 实现 w e b 应用时,最好能够通过运用一种框架以简化开发流程。 2 1 3 常用的w e bm v c 框架 ( 1 ) s t r u t s 基rm v c 的学生管理信息系统的设计与实现 “s t r u t s 是在j 2 e e 基础上形成的使用s e r v l e t 和j s p 技术的一种m v c 实现,【8 , 并根据j 2 e e 的特点做了相应的变化和扩展,给w e b 应用带来了良好的层次划分,同时 也提供了一系列的工具来简化w e b 应用的开发。 “s t r u t s 框架的处理流程清楚的体现了m v c 系统的特点”嗍,s t r u t s 控制层 a c t i o n s e r v l e t 处理客户请求,利用配置的a c t i o n m a p p i n g 对象把请求映射到a c t i o n 处理 器对象进行处理。a c t i o n 处理对象访问a c t i o n f o r m 中的数据,处理和响应客户请求。 a c t i o n 处理器对象根据处理结果通知控制层,控制层进行下一步的处理。 s t r u t s 是目前业界广泛使用的一种w e bm v c 框架,其h t m l 标签较为优秀,但 a c t i o n f o r m s 使用不便,无法进行单元测试。 ( 2 ) s p r i n gm v c “s p r i n gm v c 与s t r u t s 类似,是基于m v c 的w e b 框架”9 1 。在s p r i n g 、e bm v c 应用中,能够直接使用到s p r i n gi o c 和a o p 的功能。 s p r i n g 框架提供了构建w e b 应用程序的全功能m v c 模块。使用s p r i n g 可插入 的m v c 架构,可以选择使用内置的s p r i n g w e b 框架还是s t r u t s 这样的w e b 框架。 通过策略接口,s 州n g 框架是高度可配置的,而且包含多种视图技术,例如j a v a s e r v e r p a g e s ( j s p ) 技术、v e l o c i t y 、t i l e s 、i t e x t 和p o i 。s p r i n gm v c 框架并不知道使用的 视图,所以不会强迫用户只使用j s p 技术。s p r i n g m v c 分离了控制器、模型对象、分 派器以及处理程序对象的角色,这种分离让它们更容易进行定制。 s p r i n g 的w e bm v c 框架是围绕d i s p a t c h e r s e r v l e t 设计的,它把请求分派给处理 程序,同时带有可配置的处理程序映射、视图解析、本地语言、主题解析以及上载文件 支持。s p r i n g 提供了一个控制器层次结构,可以派生子类。但s p r i n g 的m v c 与s e r v l e t a p i 耦合,降低了s p r i n gm v c 框架的可扩展性。“角色划分过于细致,降低了应用的 开发效率”1 1 0 。 ( 3 ) w e b w o r k w e b w o r k 是o p e n s y m p h o n y 组织开发的,致力于组件和代码重用,是基于m v c 模 式的j 2 e e w e b 框架。 “w e b w o r k 的最大优点是它的简单性和灵活性”】。w e b w o r k 有一个很小的a p i , 它使开发者可以迅速进行开发工作。w e b w o r k 采用了一种更加松耦合的设计,使系统 的a c t i o n 不再与s e r v l e ta p i 耦合,使单元测试更加方便。w e b w o r k 是许多特性和适用 性的组合,它支持更多的表现层技术,如j s p 、v e l o c i t y 、f r e e m a r k e r 和x s l t 等。 “w e b w o r k 较s t r u t s 更为简单、灵活、高效”【1 2 】。但其客户端验证技术有待提高。 大连理工大学硕士学位论文 ( 4 ) j s f ( j a v a s e r v e rf a c e s ) j s f 是一种用于构建基于j a v a 的w e b 应用程序的服务器端用户接口( u i ) 组件框 架。它提供了一种以组件为中心来开发j a v aw e b 用户界面的方法,从而简化了开发。 应用开发人员和w e b 设计人员将发现j s f 开发可以简单到只需将u i 组件拖放到页面上, 丰富而强健的j s fa p i 为程序开发人员提供了无与伦比的功能和编程灵活性。j s f 还将 结构良好的模型视图一控制器( m v c ) 设计模式集成到它的体系结构中,确保了应用程 序具有更高的可维护性。使用j s f 技术开发应用就像使用j b u i l d e r 开发图形用户界面一 样,可以在w e b 应用中直接加入组件,而这些组件是在服务器端使用的,并且可以为 组件添加事件。 2 2 表现层 2 2 1 页面资源层一h t m l + c s s + j a v a s c rp t h t m l 是最普通的页面元素标记语言,用来表现文档结构。它的缺点是“将数据内 容本身与其表现形式混在了一起”1 1 3 】,这无疑加大了开发的工作难度和工作量,所以本 项目将尽量少用h t m l 。 “c s s 统一控制界面元素的显示风格,定义文档的样式”b 3 i 。当静态页面都确定 后,其具体的行为就由j a v a s c r i p t 来实现。系统中采用j a v a s c r i p t 编写脚本。脚本主要 用来响应页面事件,通过事件与用户进行交互并对输入的数据进行校验。j a v a s c r i p t 具 有较高的重用性,所以在系统丌发中将一些公共的j a v a s c r i p t 脚本统一编制成c o m m o n j s 文件,供页面使用。h t m l 、c s s 和j a v a s c r i p t 的关系如图2 2 所示。 图2 2 页面资源层关系 f i g 2 2 p a g er e s o t l l c cl e v e lr e l a t i o n 基于m v c 的学生管理信息系统的设计与实现 2 2 2 页面模板层一f r e e m a r k e r 传统的开发采用嵌入j s p 的h t m l 实现表现层的。尽管“j s p 十分强大,但是也常 常被滥用,并导致一些不良的后果,如将逻辑和表现混合在一起,破坏了美工和程序员 职责的f 常分解,使j s p 页面难以阅读和维护,【”j 。所以在本系统中m v c 模式的视图 层采用f r e e m a r k e r 实现,取代了j s p 。f r e e m a r k e r 是一个模板引擎,提供了一套内建机 制来扩展数据类型在页面上的显示格式以及强大的宏功能等,用于接收显示w e b w o r k 返回的动态信息。f r e e m a r k e r 的工作机制如图2 3 所示。 j a v a 对象 h e l l of r e d ! 图2 3f r e e m a r k e r 的工作机制 f i g ,2 3w o r k i n gm e c h a n i s mo f f r e e m a r k e r 2 3 控制层w e b w o r k 系统的控制层采用w e b w o r k 框架。w e b w o r k 是一个m v c 框架,如图2 4 所示。 我们可以看到,“s e r v l e t 分派器( s e r v l e td i s p a t c h e r ) 将创建一个a c t i o n 代理负责完成 整个请求的处理”l l5 1 。a c t i o n 处理在调用真正的a c t i o n 之前将调用拦截器( i n t e r c e p t o r ) 。 利用拦截器,可以在a c t i o n 调用前后完成一些额外的操作,例如权限验证、参数设置、 异常统一处理等。最后生成一个操作结果,该结果可以使用多种视图形式来表示。 w e b w o r k 在整个体系中具体的作用有如下几点: r 1 ) 将用户的请求封装为一个数据对象。 ( 2 ) 根据请求的不同,调用相应的逻辑处理单元,并将数据对象作为参数传入。 ( 3 ) 逻辑处理单元完成后,返回一个结果数据对象( r e s u l o 。 8 一 大连理工人学硕十学位论文 ( 4 ) 将结果数据对象中的数据与预先设计的表现层相融合并展现给用户。 图2 4w e b w o r k 工作流程 f i g 2 4 w e b w o r kw o r k f l o w 2 4 业务逻辑层和数据持久层 业务逻辑负责业务逻辑的计算和处理,“数据持久化是在对象的生命周期结束之前 将对象的属性保存下来”【,本系统使用s p r i n g 框架来管理业务对象,使用s p r i n gj d b c t e m p l a t e 简化了j d b c 的使用。 系统中s p r i n g 的主要作用有如下四点: ( 1 ) 管理系统中的业务逻辑( s e r v i c e ) 。 ( 2 ) 把s e r v i c e 所需的依赖直接注入到s e r v i c e 里面去。 ( 3 ) 声明事务管理。 ( 4 ) 利用j d b c 模板对j d b c 操作做简单封装。 一9 基于m v c 的学生管理信息系统的设计与实现 2 4 1 s p ri n gi o cg o n t a in e r s p r i n gi o cc o n t a i n e r 是一个轻量级容器,在系统中用于管理业务对象( s e r v i c e ) 。它 本身是一个非常好的j a v a b e a nf a c t o r y 。b e a nf a c t o r y 负责根据配置文件创建b e a n 实例, 配置的内容包括b e a n 属性值及依赖关系、b e a n 创建模式、b e a n 初始化和销毁方法和 b e a n 的依赖关系等。 当w e b 应用启动时,“s p r i n g 会把声明好的s e r v i c e 加载到容器里,通过b e a n f a c t o r y 实例化s e r v i c e 对象”【m 。当程序用到某个s e r v i c e 的时候,就可以从容器中取出,并 且此时取到的s e r v i c e 对象已经包含了程序运行所必需的内容。 2 ,4 2s p ri n gj d b ct e r a p l a t e s 研n gj d b ct e m p l a t e 是用来做数据持久层,“对j d b c 进行了良好的封装,通过提 供相应的模板和辅助类,在相当程度上降低了j d b c 操作的复杂性,显著提高开发效率” 1 8 os p r i n gj d b ct e m p l a t e 仍是通过j d b c 访问数据库,但访问过程中复杂的部分都封装 在其内部,对开发者仅提供必要的简单调用接口。 2 5 框架工作过程 下面以用户登录的例子介绍一下本系统采用的集成框架的工作过程,如图2 5 所示。 ( 1 ) 用户登录时填写登录表单,表单中包括用户名和密码两部分信息; ( 2 ) 用户进行提交时首先是提交表单到l o g i n a c t i o n 。由于w e b x m l 里面所有以a c t i o n 结尾的请求都映射到了w e b w o r k 的s e r v l e t ,因此请求转发给w e b w o r k 的控制层,而 由控制层调用s e r v l e t 分派器; ( 3 ) 分派器再根据配置文件的声明,将请求转发给相应的a c t i o n ,然后a c t i o n 调用 了由s p r i n g 管理的u s e r s e r v i c e ,用来获取用户的信息; ( 4 ) u s e r s e r v i c e 使用s p r i n g j d b ct e m p l a t e 访问数据库,调用了查询方法,传入s q l 语句,取得用户的具体信息: ( 5 ) u s e r s e r v i c e 把取得的u s e r 对象返回给a c t i o n 。a c t i o n 完成密码验证过程; r 6 1 验证成功,返回s u c c e s s 结果,请求继续交由w e b w o r k 的s e r v l e t 分派器进 行处理; ( 7 ) 根据配置文件中定义s u c c e s s 结果调用f r e e m a r k e r 来处理页面横板; r 8 1f r e e m a r k e r 根据a c t i o n 中的数据与页面模板输出用户登录成功的信息。 大连理一j :人学硕十学位论文 图2 5 框架i :作过程 f i g 2 5f r a m e w o r kw o r k f l o w 基于m v c 的学生管理信息系统的设计与实现 3 系统分析 学生管理信息系统包括教师信息管理,学籍管理,成绩管理,考勤管理,奖惩管理, 社团信息管理,党建信息管理,论坛和管理中心等部分,系统划分如图3 1 所示。本文 主要完成了考勤管理、教师信息管理和学籍管理三个子系统的相关工作,下面将着重介 绍这三个子系统。 3 1 考勤管理子系统 图3 1 系统划分 f i g 3 1s y s t e md i v i s i o n 3 1 1 功能说明 考勤管理子系统主要实现对学生上课出勤情况的记录和统计,并实现网上登记,网 上查询的功能。教师上课时在教师机上直接登录,记录考勤信息。辅导员可以随时上网 查询所带班级学生的出勤情况并对出勤信息进行确认,并可以对出勤情况进行统计和汇 总。学生也可以上网查询个人的出勤记录。 3 1 2 用例分析 本系统中的主要用户包括学生、教师和辅导员。 学生通过本系统主要实现了相关课程出勤信息的查询。教师使用本系统记录和查询 当前学期授课班级学生的出勤情况,并根据辅导员提供的特殊情况信息( 病假、事假等 人连理1 :大学硕士学位论文 等) 进行考勤信息的修改。辅导员使用本系统可以查询所带班级学生在本学期各个课程 的出勤情况,并对特殊情况的学生信息与任课教师进行确认。 考勤管理子系统的用例图如图3 2 所示。 图3 2 考勤管理子系统h j 例图 f i g 3 2 a t t e n d a n c em a n a g e m e n ts u b s y s t e m su s ec a s ed i a g r a m 3 2 教师信息管理子系统 3 2 1 功能说明 教师信息管理子系统主要实现教师信息的查询、维护。教师、辅导员都可以查看和 维护本人信息,也可以查询其他教师和辅导员的信息。学生可以查询任课教师信息和所 在班级辅导员老师的相关信息。管理人员对教师的信息进行添加、删除等维护工作。 夫蠢天黼。+l- 基于m v c 的学生管理信息系统的设计与实现 3 2 2 用例分析 本系统中的主要用户包括教师、辅导员、管理人员和学生。教师通过本系统查看和 维护本人的基本信息、科研信息和其他信息,还可以查询系部其他教师所在教研室、职 称等相关信息,查询辅导员的办公室、所带班级等信息。辅导员通过本系统查看和维护 本人的基本信息、所带班级信息、科研信息和其他信息,还可以查看其他教师和辅导员 的基本信息情况。管理人员通过本系统可以成批导入教师的信息,当人员发生变动时可 以对教师信息进行编辑和删除。学生可以查询到任课教师的基本信息、科研信息和授课 信息,也可以查询到辅导员的基本信息和所带班级情况。用例图如图3 3 所示。 、 :型竺竺兰 l o 基褥 1 4 q 卜 限定,不会输出。 在使用f r e e m a r k e r 编写页面一般遵循以下原则: ( 1 ) 确保项目页面的可控性。 ( 2 ) 统一系统页面的风格。 ( 3 ) 利于系统页面的整体风格的修改。 ( 4 ) 提高工作效率。 在使用f r e e m a r k e r 编写页面时,为了优化代码的结构,降低维护成本,通常会将页 面重复的代码抽出构建一个宏( m a c r o ) 。f r e e m a r k e r 的宏是和某个变量关联的模板片 断,以便在模板中通过用户定义指令使用该变量。通过f r e e m a r k e r 宏,可以统一系统页 面的风格,复用重复的代码,提高工作效率,利于页面的整体风格的修改。当修改时只 需改动定义的宏,而不用一个一个页面的去调整。下面介绍几个在系统中使用的宏: ( 1 ) 调用实现分页处理的宏p p a g i n g 其中h w l i s t 是返回到该页面的p a g i n g l i s t 变量,关于p p a g i n g 的实现见附录b 。 ( 2 ) 调用实现缩进的宏p i n d e n t $ c c l a s s n a m e 基丁m v c 的学生管理信息系统的设计与实现 其中c c l a s s i d ? l e n g t h 是指当前循环到的课程类型编号的长度,c c l a s s n a m e 是课程分类名称,p i n d e n t 的定义见附录b 。 ( 3 ) 调用实现同历控制的宏p ,c a p c a ln a m e = “e n d d a t e ”卢 其中e n d d a t e 是文本框的名称,具体的p c a l 的实现见附录b 。通过宏引入日期控件, 在控件中选择同期后,会把日期的数值赋到e n d d a t e 这个文本框中。 为了让f r e e m a r k e r 页面能够正常显示,需要在w e b x m l 文件中增加以下配置: f r e e m a r k e r c o r n o p e n s y m p h o n y w e b w o r k v i e w s f r e e m a r k e r f r e e m a r k e r s e r v l e t 3 f r e e m a r k e r * f l l u r l - p a t t e m 要映射到f r e e m a r k e r s e r v l e t ,当特定的f r e e m a r k e r 页面被调用时,则相 应的s e r v l e t 就会被调用,页面就

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论