(物理海洋学专业论文)国家自然科学基金青岛海洋资料共享服务系统设计与实现.pdf_第1页
(物理海洋学专业论文)国家自然科学基金青岛海洋资料共享服务系统设计与实现.pdf_第2页
(物理海洋学专业论文)国家自然科学基金青岛海洋资料共享服务系统设计与实现.pdf_第3页
(物理海洋学专业论文)国家自然科学基金青岛海洋资料共享服务系统设计与实现.pdf_第4页
(物理海洋学专业论文)国家自然科学基金青岛海洋资料共享服务系统设计与实现.pdf_第5页
已阅读5页,还剩60页未读 继续免费阅读

(物理海洋学专业论文)国家自然科学基金青岛海洋资料共享服务系统设计与实现.pdf.pdf 免费下载

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

文档简介

国家海洋局第一海洋研究所硕士学位论文 摘要 在海洋科学众多学科的发展过程中,海洋调查数据一直推动着海洋科学的发展 并且起着不可替代的重要作用。目前我国积累了大量的海洋科学数据,但在数据管 理方面的工作尚未全面深入的展开。为了利用计算机科学技术实现海洋科学数据的 共享服务,避免重复调查和资源闲置浪费,同时也为了加强国家自然科学基金海洋 科学项目资料的管理,实现基金资助项目资料的统一管理和无偿共享使用,充分发 挥国家基金投入的社会效益和经济效益,国家自然科学基金委于2 0 0 3 年初委托国 家海洋局第一海洋研究所筹建“青岛海洋科学资料共享服务中心”,建立其相应的 各类海洋科学基金项目资料的收集、整编和共享服务体系。国家自然科学基金青岛 海洋资料共享服务系统( 以下简称“共享服务系统”) 主要完成与数据共享用户的 网络交流,系统的核心是基金项目信息的查询和维护功能。查询功能中既有单条件 查询和多条件查询,也有精确查询和模糊查询,其目的都是为了方便用户查询。且 系统有完整的用户注册和用户信息管理功能。 本文详细说明了利用j s p 和j a v a s c r i p t 等技术开发的“青岛海洋资料共享服务 系统 ,探讨当今海洋资料共享服务系统的开发与研究。主要介绍了基于b s 架构 的青岛海洋资料共享服务系统的开发背景、开发方法、系统需求分析、系统功能设 计、系统数据库结构设计、系统开发实现等。重点说明了系统的设计思想、难点技 术和解决方案。同时也简单介绍了j a v a 、j s p 、a j a x 、c s s 等相关技术,以及o r a l c e 、m a c r o m e d i ad r e a m w e a v e r8 0 、t o m c a t 5 0 等相关软件。 系统采用的o r a c l e 数据库有着最为灵活的数据库结构和极高的安全性、稳定 性,使用j d b c 连接数据库,它对数据库应用有着良好的支持。考虑到跨平台、可 移植等要求,选用j s p 开发共享服务系统。j s p 实现页面上的动态内容,将显示逻 辑和业务逻辑分离,使w e b 应用程序的开发变得容易和快捷,且支持基于可重用的 跨平台组件的设计如j a v a b e a n s ,j a v a b e a n s 封装业务逻辑,其脚本在服务器端执行。 基于j a v a 的w e b 应用程序,用户可通过浏览器软件连接后台数据库完成信息的浏 览、查询与维护。 动态网页开发过程中使用j a v a s c r i p t 可以开发i n t e m e t 客户端的应用程序。j a v a s c r i p t 包含于a j a x 技术中,a j a x 是多种技术的综合。其中使用j a v a s c r i p t 将x h t m 国家海洋局第一海洋研究所硕士学位论文 l 、d o m 、x m l 、x m l h t t p r e q u e s t 绑定。a j a x 可以构建更为动态和响应更灵敏的 w e b 应用程序,主要功能在于浏览器客户端和服务器端采用异步通信交互方式,当 通讯信息返回时,使用j a v a s c r i p t 相应地更新部份u i ,而不刷新整个页面。 本系统基于w i n d o w ss e r v e r2 0 0 3 和o r a c l e ,采用b s 架构,m v c 设计模式, j 2 e e 技术开发。整个系统操作简便、界面友好,在数据安全及稳定性方面都有较高 的水平。 关键词:j a 、,a ;o r a c l e ;j s p ;j a v ab e a n ;数据库;共享服务 国家海洋局第一海洋研究所硕士学位论文 a bs t r a c t i t i sw e l lk n o w nt h a tt h eo c e a n o g r a p h i co b s e r v a t i o nd a t ah a v eb e e np l a y i n ga ni m p o r t a n tr o l ei np r o m o t i n gt h ed e v e l o p m e n to fm a r i n es c i e n c e i nc h i n a ,ag r e a td e a lo fo c e a n o g r a p h i cd a t ah a v e b e e na c c u m u l a t e d ,b u tt h ew o r ki nt h ed a t am a n a g e m e n tf i e l di sj u s ts t a r t e d i no r d e rt oa c h i e v et h eo c e a n o g r a p h i cd a t as h a r i n g s e r v i c e ,a v o i dt h er e d u n d a n ti n v e s t i g a t i o na n di d l e r e s o u r c ea n ds t r e n g t h e nt h em a n a g e m e n to fo c e a n o g r a p h i cd a t a ,t h ef i r s ti n s t i t u t eo fo c e a n o g r a p h y , s o aw a sc o m m i s s i o n e db yt h en a t i o n a ln a t u r a ls c i e n c ef o u n d a t i o n ( n a s f ) i n2 0 0 3t oe s t a b l i s ht h eq i n g d a oo c e a n o g r a p h i cd a t as h a r i n gs e r v i c ec e n t e ra n dt h ea s s o c i a t e ds e r v i c es y s t e mf o rd a t ac o l l e c t i o n ,c o m p i l a t i o na n ds h a r i n gu n d e rd i f f e r e n tm a r i n es c i e n c ef o u n d a t i o np r o j e c t s t h em a i nt a s ko ft h es e r v i c es y s t e mi st oa c h i e v et h ei n t e r n e tc o m m u n i c a t i o nb e t w e e nt h ed a t as h a r i n gu s e r s ,a n di t sc o r ef u n c t i o ni st h e i n q u i r ya n dm a i n t e n a n c eo fd i f f e r e n tf o u n d a t i o np r o j e c ti n f o r m a t i o na n dd a t a t h ei n q u i r ya n dm a i n t e n a n c eo fd i f f e r e n tf o u n d a t i o np r o j e c ti n f o r m a t i o na n dd a t a t h ei n q u i r yf u n c t i o n si n c l u d e su n c o n d i t i o n a li n q u i r y , c o n d i t i o n a li n q u i r y , p r e c i s ei n q u i r ya n df u z z yi n q u i r yt of a c i l i t a t et h eu s e r si n q u i r y , a n dt h es e r v i c es y s t e mp o s s e s s e si n t e g r a t e df u n c t i o n sf o ru s e rr e g i s t r a t i o na n du s e ri n f o r m a t i o nm a n a g e m e n t i nt h i sp a p e r , t h ed e v e l o p m e n tb a c k g r o u n d ,d e v e l o p m e n tm e t h o d ,d e m a n da n a l y s i s ,f u n c t i o nd e s i g n ,d a t a b a s es t r u c t u r ed e s i g na n dd e v e l o p m e n tr e a l i z a t i o no ft h e s e r v i c es y s t e ma r ei n t r o d u c e d ,a n dt h ed e s i g nc o n c e p t ,k e yt e c h n i q u e sa n ds o l u t i o ns c h e m eo ft h es e r v i c es y s t e ma r ee m p h a t i c a l l ye x p l a i n e d i na d d i t i o n ,t h er e l e v a n tt e c h n i q u e ss u c ha sj a v a ,j s p ,a j a xa n dc s sa n dt h er e l e v a n ts o f t w a r e ss u c ha so r a c l e ,m a c r o m e d i ad r e a m w e a v e r8 0a n dt o m c a t5 0a r eb r i e f l yi n t r o d u c e d o r a c l ed a t a b a s eu s e df o rt h es e r v i c es y s t e mh a sf l e x i b l ed a t a b a s es t r u c t u r e ,e x c e l l e n t s a f e t ya n ds t a b i l i t y , a n dj d b cc o n n e c t i n gd a t a b a s ep r o v i d e sg o o ds u p p o r t f o rt h ed a t a b a s ea p p l i c a t i o n ,j s pi su s e dt od e v e l o pas h a r i n gs e r v i c es y s t e mt o m e e tt h ec r o s s - p l a t f o r ma n dp o r t a b l er e q u i r e m e n t s ,j s pc a nv i s u a l i z et h ed y n a m i c t e x t so np a g e s ,s e p a r a t et h ed i s p l a yl o g i cf r o mt h es e r v i c el o g i c ,f a c i l i t a t eh ed e v e l o p m e n to fw e ba p p l i c a t i o np r o g r a m m e sa n ds u p p o r tt h ed e s i g no fc r o s s p l a t f o r m 3 国家海洋局第一海洋研究所硕士学位论文 m o d u l e ss u c ha sj a v a b e a na n dj a v a b e a ns e a ls e r v i c el o g i c ,a n dj s ps c r i p t sa r ee x e c u t e da tt h es e r v e rt e r m i n a l t h eu s e rc a l lu s ej a v a - b a s e dw e ba p p l i c a t i o np r o g r a m m ea n db r o w s e rs o f t w a r et ol i n kw i t ht h eb a c k g r o u n dd a t a b a s et om a k et h ei n f o r m a t i o nb r o w s e ,q u e r ya n dm a i n t e n a n c e j a v a s c r i p tc a nb eu s e dt od e v e l o pt h ea p p l i c a t i o np r o g r a m m ea t t h ei n t e r n e t c l i e n tt e r m i n a lf o rd e v e l o p i n gt h ed y n a m i cw e bp a g e s j a v a s c r i p ti s i n c l u d e di na j a xt e c h n o l o g y , a n da j a xi s ac o m p l e xo fm u l t i p l et e c h n o l o g i e s j a v a s c r i p ti su s e dt ob i n dx h t m l ,d o m ,x m la n dx m l h t t p r e q u e s t a j a xc a nb eu s e dt of o r m u l a t em o r ed y n a m i ca n ds e n s i t i v ew e ba p p l i c a t i o np r o g r a m m e s ,a n di t sm a i nf u n c t i o ni st oa d o p tt h ei n t e r a c t i v em o d eo fa s y n c h r o n o u s ,c o m m u n i c a t i o nb e t w e e nt h e b r o w s e rc l i e n ta n ds e r v e r , a n dj a v a s c r i p tw i l lu p d a t ep a r to fu ia c c o r d i n g l yr a t h e r t h a nr e f r e s ht h ee n t i r ep a g ew h e nt h ec o m m u n i c a t i o ni n f o r m a t i o nr e t u r n s t h es e r v i c es y s t e mi sb a s e do nw i n d o w ss e r v e r2 0 0 3 a n do r a c l ed a t a b a s et e c h n i q u e ,a n dw a sd e v e l o p e db yu s i n gt h eb sf r a m e w o r k ,m v cd e s i g nm o d e la n dj 2 e et e c h n o l o g y t h ew h o l es y s t e mi sc h a r a c t e r i z e db ys i m p l ea n dc o n v e n i e n t o p e r a t i o n ,f r i e n d l yi n t e r f a c ea n dh i g hs a f e t ya n ds t a b i l i t y k e y w o r d s :j a v a ;j s p ;j a v a b e a n ;d a t a b a s e ;s h a r i n gs e r v i c e 4 原创性声明 本人郑重声明:所呈交的学位论文,是本人在导师的指导下,独立进行研究工作取得的成 果。除文中已经注明引用的内容外,本论文不含任何其他个人或集体已经发表或撰写过的作品 或成果。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本声明的法 律结果由本人承担。 论文作者签名: 聚衲今 日期:哪1 年b 月f 0 日 学位论文使用授权说明 本人完全了解国家海洋局第一海洋研究所关于收集、保存、使用学位论文的规定,即: 按照本所要求提交学位论文的印刷本和电子版本; 研究所有权保存学位论文的印刷本和电子版,并提供目录检索与阅览服务; 研究所可以采用影印、缩印、数字化或其它复制手段保存论文; 研究所同时授权中国科学技术信息研究所将本学位论文收录到中国学位论文全文数据 库,并通过网络向社会公众提供信息服务。 ( 保密论文在解密后遵守此规定) 敝储躲象蛳聊魏办江 日期:硼g 年6 月f o 日 国家海洋局第一海洋研究所硕士学位论文 1 1 系统背景 第1 章引言 我国是一个发展中的沿海大国。一直以来高度重视海洋的开发与保护,把发展 海洋事业作为国家发展战略,加强海洋综合管理,不断完善海洋法律制度,积极发 展海洋科学技术和教育。我国积极参与联合国系统的海洋事务,推进国家间和地区 性海洋领域的合作,并认真履行自己承担的义务,为全球海洋开发和保护事业作出 了积极贡献。 近年来,我国不断深化海洋资源和环境调查、勘探,积极寻找新的可开发资源, 研究新的开发、保护技术和方法,大力培养海洋开发与保护的科技人才队伍,普及 海洋知识,努力提高全民族的海洋意识。 我国现有涉海科研机构1 2 2 个、科研人员1 万多人,已经形成了一支学科比较 齐全的海洋科技队伍。在海洋调查和科学考察、海洋基础科学研究、海洋资源开发 与保护、海洋监测技术以及海洋技术装备制造等方面取得了许多成绩。 新中国成立以来,在海洋调查和海洋科学考察方面做了大量的工作。其调查范 围从近海逐步扩展到大洋,调查方式从海面观测逐步发展到航空航天遥感、海面观 测、水下探查。早在1 9 5 8 年至1 9 6 0 年,我国就组织了全国海洋综合普查;1 9 8 0 年 至1 9 8 6 年,进行了全国海岸带和海涂资源综合调查,并开展了海岸带综合开发利 用试验;1 9 8 8 年至1 9 9 5 年,又进行了全国海岛资源综合调查和海岛综合开发试验 等等;1 9 8 3 年,中国加入了南极条约,并从1 9 8 4 年开始进行南极及其周围海域 调查,到1 9 9 7 年共进行了1 4 次科学考察,先后建立了长城、中山南极科学考察站, 为人类和平利用南极作出了积极贡献;1 9 9 6 年我国又加入了国际北极科学委员会, 积极参与北极在全球变化中的作用等相关的国际合作项目。 在几十年的海洋调查和海洋科学考察工作中,积累了大量的珍贵的科学研究数 据和基础图件,但在研究成果数据管理方面的工作尚未全面深入的展开。因众多海 洋学科研究领域的存在,海洋数据具有种类多、数据繁杂的特点。如果按照学科分 类,海洋数据内容的范围主要包括海洋水文数据、海洋遥感数据、海洋地质数据、 海洋生物数据、海洋化学数据;按照获取方式分类,则可分为遥测数据、现场采集 数据、数值模拟数据,网上下载数据等。从数据存在的形式来看,目前海洋数据主 要有数值数据、图形图像数据、文档、表格等类型。因数据的所属学科不同、来源 国家海洋局第一海洋研究所硕士学位论文 不同、获取方式不同、格式不同,因而造成了数据的多样化和多元化。国内尚无数 据管理规范,数据缺乏统一管理,大部分数据仍然分散在各单位和研究者手中,海 洋信息资源闲置浪费。成果数据无法实现国内科学界的广泛共享,同时也无法展开 与国际科研人员的有效交换,亦无法取得更多、更系统的数据,更难满足国内科技 界对长时间序列和多学科综合研究的数据需求。 从上世纪9 0 年代初,随着网络技术和信息技术的飞速发展,特别是数据库技 术的日趋完善和普及,通过网络实现数据的共享和使用得到了我国许多学科领域的 重视和利用【l 一】。海洋学科目前涌现出了多个提供数据共享的平台,一些数据标准 相对比较统一、应用比较广泛的数据已经可以通过网络提供给科研用户,初步建成 了国家有关部门、产业、研究机构、沿海地区共同参与的海洋信息交互网络。其中 以国家海洋信息中心为主的海洋资料信息服务系统,为海洋开发、海洋科研和环境 保护提供了大量的信息服务。如我国的极地科学数据库平台,以元数据为基础建立 数据目录,来进行数据检索,实现了较好的效果。 目前,国外在海洋数据共享建设方面也已有较大发展,已经建设了许多数据共 享平台,并且得到了极好的应用,包括我国在内的众多海洋科技工作者都频繁地从 这些信息平台下载海洋数据。如:美国国家海洋数据中心( n o d c ) 、日本国家海洋 数据中一t l , ( j o d c ) 、英国的国家海洋数据中一i 二 ( b o d c ) 等。上述海洋数据平台的建立 都是在基于共享平台机制的基础上建立的,通过这些数据平台,海洋数据最大限度 的为全球海洋工作者所利用,极大地推动了海洋科学的发展。 科学数据共享工程是我国科技部、国家基金委当前工作重点,是国家科技基础 条件平台建设的重要内容。为了实现海洋科学数据有效的共享服务,也为了加强国 家自然科学基金海洋科学项目资料的管理,实现基金资助项目资料的统一管理和无 偿共享使用,充分发挥国家基金投入的社会效益和经济效益,国家自然科学基金委 于2 0 0 3 年初委托国家海洋局第一海洋研究所筹建“青岛海洋科学资料共享服务中 心 ,建立其相应的各类海洋科学基金项目资料的收集、整编和共享服务体系。 青岛海洋科学资料共享服务中心的建立,将极大地促进海洋科技共享平台建设 工程。根据国家基金委的委托和授权,青岛海洋科学资料共享服务中心将具体负责 收集和管理国家自然科学基金海洋科学项目资料,拟定有关标准和实施细则,建立 有关数据文档、数据集、数据库系统和资料共享服务体系。此后,凡国家自然科学 基金海洋科学项目研究过程中所用的原始资料、研究工作数据和成果数据等都将录 入该共享平台,在研的国家基金项目均可无偿共享使用共享平台中的各类资料,其 2 国家海洋局第一海洋研究所硕士学位论文 他有关科研活动按规定也可得至d 该平台无偿或有偿资料服务,以充分发挥国家基金 投入的社会效益和经济效益,避免重复投入和资源浪费。 针对数据的来源多种多样,很难保证数据提交格式统有序等因素,青岛海洋 科学资料共享服务系统选择有效的数据组织方式,使目前存在的数据在用户面前变 得有序化、规范化。而用户通过这种模式获取数据,可以在最短的时间内、用自己 最熟悉的方式鉴别数据的真伪性、有效性、可利用性。 2 0 0 3 年开发的青岛海洋科学资料共享服务系统采用了动态网站设计语言a s p 和s q ls e r v e r 数据库,并结合了w e b g i s 等技术【2 】。经过几年的应用,发现其稳 定性、功能性及设计实用性等方面都存在一些问题。a s p 仅适用于w i n d o w s 操作系 统,但w i n d o w s 操作系统作为服务器端操作系统,其稳定性、安全性等方面远不如 u n i x l i n i 系统。而j s p 动态网站技术具有跨平台性,基于j s p 的应用系统可以 方便地移植于u n i x l 1 n u x 操作系统下。 针对以上所述因素,有必要进一步改进系统结构设计。新版本的共享服务系统 选用j s p 和o r a c l e 开发,将动态网页和数据库结合,管理操作基金项目信息。基于 j s p 的共享服务系统具有跨平台性、安全性高、扩展性好、开发成本低等优点。 1 2 系统可行性与关键技术分析 系统可行性分析( f e a s i b i l i t ya n a l y s i s ) 也称为可行性研究,是在系统调查的基 础上,针对系统的开发是否具备必要性和可能性,对系统的开发从技术、经济、社 会的方面进行分析和研究,以避免投资失误,保证系统的开发成功。可行性研究的 目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。系统可行性分 析通常包括经济可行性、社会适应可行性和技术可行性等几个方面的内容。 鉴于笔者做的是改进原共享服务系统,下文就只做技术的可行性分析。 技术上的可行性分析主要分析技术条件能否顺利完成开发工作,硬、软件能否 满足开发者的需要等。硬件方面,科技飞速发展的今天,硬件更新的速度愈快,容 量愈大,可靠性愈高,价格愈低,其硬件平台完全能满足该系统的需要。在软件方 面也业已成熟可行。b s 架构、j 2 e e 技术、m v c 设计模式、o r a c l e 数据库、t o m e a t 容器等系统开发软件发展都亦趋成熟化。 1 2 1b s 架构 b s ( b r o w s e r s e r v e r ) 架构即浏览器和服务器架构。它是随着i n t e m e t 技术的 兴起,对c s 架构的一种变化或者改进的架构。在这种架构下,用户工作界面是通 国家海洋局第一海洋研究所倾七学位论文 过w w w 浏览器来实现,主要事务逻辑在服务器端( s e r v e r ) 实现,极少部分事务 逻辑在前端( b r o w s e r ) 实现,形成三层结构( 3 一t i e r ) 。简化了客户端电脑载荷,减 轻了系统维护与升级的成本和工作量,降低了用户的总体成本( t c o ) 。 以目前的技术看,建立b s 架构的网络应用,并通过l a t e m e t j i n t r a n e t 模式下数 据库应用,相对易于把握、成本也较低。它是一次性到位的丌发,能实现不同的人 员,从不同的地点,以不同的接入方式( 比如l a n ,w a n ,i n t e r n e t i n t r a n e t 等) 访 问和操作共同的数据库;它能有效地保护数据平台和管理访问权限,服务器数据库 也很安全。特别是在j a v a 这样的跨平台语言出现之后,b s 架构管理软件更是方 便、快捷、高效。b s 架构结构如图1 所示: 幽1b s 架构结构幽 从图1 可见此架构一个重要的特点是,用户可以完全不需要安装客户端软件, 也就不需担心任何软件升级和不兼容等任何客户端所遇到的问题。另还有以下特 点: 维护和升级方式简单 目前,软件系统的改进和升级越来越频繁,b s 架构的产品明显体现着更为方 便的特性。b s 架构的软件只需要管理服务器,所有的客户端只是浏览器,不需要 做任何的维护。无论用户的规模有多大,有多少分支机构都不会增加任何维护升级 国家海洋局第一海洋研究所硕十学位论文 的工作量,所有的操作只需要针对服务器进行;如果是异地,只需要把服务器连接 专网即可,实现远程维护、升级和共享。这对用户人力、物力、时间、费用的节省 是显而易见的。因此,维护和升级革命的方式是“瘦 客户机,“胖”服务器。 成本降低,选择更多 w i n d o w s 在桌面电脑上几乎一统天下,浏览器成为了标准配置,但在服务器操 作系统上w i n d o w s 并不是处于绝对的统治地位。l i n u x 操作系统和数据库都是免费 的,而且安全性高。所以服务器操作系统的选择是很多的。同时,不管选用哪种操 作系统,使用w i n d o w s 作为桌面操作系统电脑不会受影响。 应用服务器运行数据负荷较重 由于b s 架构管理软件只安装在服务器端( s e r v e r ) 上,则服务器运行数据负 荷较重,一旦发生服务器“崩溃 等问题,后果不堪设想。因此,需备有数据库存 储服务器,以防万一。 b s 架构的优点显而易见,适合网站的构建,有利于网站的维护和扩展。 1 2 2j 2 e e 技术 j 2 e e 技术主要用来实现基于b s 架构的、多层的、分布式的企业级应用。j 2 e e 技术有很多特点,非常适合大型企业级项目的开发。j 2 e e 是一种利用j a v a 语言的 标准体系结构定义,j 2 e e 不仅巩固了标准版中的许多优点,例如“编写一次、随处 运行”的特性、方便存取数据库的j d b ca p i 、c o r b a 技术以及能够在i n t e m e t 应 用中保护数据的安全模式等等,同时还提供了对e j b ( e n t e r p r i s ej a v a b e a n s ) 、j a v a s e r v l e t sa p i 、j s p ( j a v as e r v e rp a g e s ) 以及x m l 技术的全面支持。其最终目标是 成为一个支持企业级应用开发的体系结构,简化企业解决方案的开发,部署和管理 等复杂问题。 j 2 e e 是一个技术架构,也可以视为一个技术规范,它包含了许多内容,这也是 其复杂性之所在。j 2 e e 主要包括了以下技术规范:j d b c 、j s p 与s e r v l e t 、j n d i 、 r m i 、j m s 、j a v a m a i l 、e j b 、j 凇、w e bs e r v i c e s 。 在开发不同类型的企业级应用时,根据各自需求和目标的不同,灵活使用并组 合不同的组件、服务和a p i 。本共享服务系统采用了其中j d b c 、j s p 等技术。 s e r v l e t s e r v l e t 是j a v a 平台上的c g i 技术。s e r v l e t 在服务器端运行,动态地生成w e b 页面。与传统的c g i 和许多其它类似c g i 的技术相比,j a v as e r v l e t 具有更高的效 率并更容易使用。对于s e r v l e t ,重复的请求不会导致同一程序的多次转载,它是依 5 国家海洋局第一海洋研究所硕上学位论文 靠线程的方式来支持并发访问的。 j s p j s p ( j a v as e r v e rp a g e ) 是一种实现静态h t m l 和动态页面输出混合编码的技术。 从这一点来看,非常类似a s p 、p h p 等技术。借助形式上的内容和外观表现的分 离,w e b 页面制作的任务可方便地翅分给页面设计人员和程序员,并方便地通过 j s p 来合成。运行时,j s p 首先被转换成s e r v l e t ,并以s e r v l e t 的形态编译运行,因 此其效率和功能与s e r v l e t 相比没有差别。 1 2 3m v c 模式 m v c ( m o d e l v i e w - c o n t r o l l e r ) 模式,中文为“模式视图一控制器。即把一个 应用的输入、处理、输出流程按照m o d e l 、v i e w 、c o n t r o l l e r 的方式进行分离,这样 一个应用被分成三个层模型层、视图层、控制层。大部分用过程语言开发出来 的w e b 应用,初始的开发模板就是混合层的数据编程。例如,直接向数据库发送请 求并用h t m l 显示,开发速度往往比较快,但由于数据页面的分离不是很直接,因 而很难体现出业务模型的样子或者模型的重用性。产品设计弹性力度很小,很难满 足用户的变化性需求。m v c 要求对应用分层,虽然要花费额外的工作,但产品的 结构清晰,产品的应用通过模型可以得到更好地体现。 模型、视图、控制器三者之间的关系和各自的主要功能,如图2 所示。 方法调用- - - - n 一事件 图2m v c 组件类型的关系和功能 e v e n t ( 事件) 导致c o n t r o l l e r 改变m o d e l 或v i e w ,或者同时改变两者。只要 c o n t r o l l e r 改变了m o d e l 的数据或者属性,所有依赖的v i e w 都会自动更新。类似的, 只要c o n t r o l l e r 改变了v i e w ,v i e w 会从潜在的m o d e l 中获取数据来刷新自己。 6 国家海洋局第一海洋研究所硕上学位论文 m v c 是一种设计模式( 用j 2 e e 实现的,也可用其他语言实现) ,m v c 与j 2 e e 技术架构的对应关系是:v i e w 处于w e b t i e r 或者说是c l i e n t t i e r ,通常是j s p s e r v l e t , 即页面显示部分;c o n t r o l l e r 也处于w e bt i e r ,通常用s e r v l e t 来实现,即页面显示 逻辑部分实现;m o d e l 处于m i d d l et i e r ,通常用服务端的j a v a b e a n 或者e j b 实现, 即业务逻辑部分的实现。 m v c 模式具有极其良好的可扩展性。它可以轻松实现以下功能: 实现一个模型的多个视图; 采用多个控制器; 当模型改变时,所有视图将自动刷新; 所有的控制器将相互独立工作。 这就是m v c 模式的好处,只需在以前的程序上稍作修改或增加新的类,即可 轻松增加许多程序功能。以前开发的许多类可以重用,而程序结构不需要改变,各 类之间相互独立,便于团体开发,提高开发效率。下面讨论如何实现一个模型、两 个视图和一个控制器的程序。其中模型类及视图类不需要改变,与前面的完全一样, 这就是面向对象编程的好处。对于控制器中的类,只需要增加另一个视图,并与模 型发生关联即可。该模式下视图、控制器、模型三者之间的关系如图3 所示。 图3 视图、控制器、模型三者之间关系的示意图 同样也可以实现其它形式的m v c ,如一个模型、两个视图和两个控制器。 当然m v c 也有不足,体现在以下几个方面: 增加了系统结构和实现的复杂性 对于简单的界面,严格遵循m v c ,使模型、视图与控制器分离,会增加结构 的复杂性,并可能产生过多的更新操作,降低运行效率。 视图与控制器间的过于紧密的连接 视图与控制器是相互分离,但确实联系紧密的部件,视图没有控制器的存在, 7 国家海洋局第一海洋研究所硕上学位论文 其应用是很有限的,反之亦然,这样就妨碍了他们的独立重用。 视图对模型数据的低效率访问 依据模型操作接口的不同,视图可能需要多次调用才能获得足够的显示数据。 对未变化数据的不必要的频繁访问,也将损害操作性能。 目前,一般高级的界面工具或构造器不支持m v c 模式 改造这些工具以适应m v c 需要和建立分离的部件的代价是很高的,从而造成 使用m v c 的困难。 1 2 4j a v a 开发w e ba p p l i c a t i o n 符合m v c 设计模式的开发方式 j s p + s e r v l e t + j a v a b e a n ( e j b ) j s p + 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 ( e j b ) ( m o d e l ) t d k ( t u r b i n e ,v e l o c i t y ) x s p j s p + s t r u t s + j a v a b e a n ( e j b ) 该共享服务系统采用第二种开发方式。 8 国家海洋局第一海洋研究所硕士学位论文 2 1 系统设计目标 第2 章系统设计 系统以共享服务为核心,资源整合为主线,按照“整合资源、共建共享,统筹 规划、分步实施,统一标准、保证质量 的建设原则,优化、整理现有的海洋科学 数据资料,设计开发共享服务系统各种功能模块,构建有效的数据管理与共享服务 保障体系,实现数据资料共享。 基于互联网的青岛海洋科学资料共享服务系统是自然科学基金会面向承担基 金项目的研究人员、依托单位和社会公众的业务信息远程联网事务处理和信息发 布、查询服务系统。目的是实现基金项目信息发布的网络化管理,完成与数据共享 用户的网络交流,实现各类海洋科学基金项目资料的收集、整理和共享服务,使现 有搜集到的海洋数据变得有序、规范,同时要求系统具有良好的可移植性、安全性 和可扩展性。 2 2 开发和运行环境选择 2 2 1 开发语言及工具 动态站点的功能要求信息发布动态化,即页面能够根据浏览者的请求显示出相 应的界面,对数据库进行查询,增删改等操作。动态站点的开发要求:业务逻辑完 整,开发过程简便。动态站点的维护要求:业务逻辑和页面显示分离,使得页面显 示与业务逻辑的修改可以分别进行,化解问题的复杂程度,便于开发维护。 基于b s 架构的共享服务系统通过较丰富的功能设计实现信息共享网络化。该 系统供管理员、注册用户以及普通访客使用。登录者可以查询信息或者发布信息, 也可下载相关数据等。系统中用户管理为必不可少的模块项,主要是为了安全有效 地存储和管理注册用户信息。赋予管理员特定的权限,可以对用户信息维护和项目 信息进行分类,添加、删除、修改等,方便网站的管理与维护。 要实现这样的功能,离不开后台数据库的支持。用户注册信息,收集到的用户 提交信息、查询结果等大量的数据都由数据库存储管理。本系统服务器端采用了o r a c l e 作为后台数据库,用j d b c 技术与数据库连接,结合s q l 语句对项目信息实 现查询、添加、删除、修改等操作,使w e b 与数据库紧密联系起来。 系统主要由j s p 页面和j a v a b e a n s 技术实现组件重用两部分组成。j s p 用于页 9 国家海洋局第一海洋研究所硕士学位论文 面显示部分,j a v a b e a n s 用于封装业务逻辑,j d b c 用于存取数据库,o r a c l e 用于数 据存储。j s p 通过调用封装了业务逻辑的j a v a b e a n s 的接口,对数据库的数据处理, 实现动态信息发布。a j a ) 【实现部分u i 更新功能。 2 2 1 1j a v a j a v a 是由s u nm i c r o s y s t e m s 公司于1 9 9 5 年5 月推出的j a v a 程序设计语言( 以 下简称j a v a 语言) 和j a v a 平台的总称。 j a v a 平台由j a v a 虚拟机( j a v av i r t u a lm a c h i n e ) 和j a v a 应用编程接口( a p p l i c a t i o np r o g r a m m i n gi n t e r f a c e 、简称a p i ) 构成。j a v a 应用编程接口为j a v a 应用提 供了一个独立于操作系统的标准接口,可分为基本部分和扩展部分。在硬件或操作 系统平台上安装一个j a v a 平台之后,j a v a 应用程序就可运行。现在j a v a 平台已经 嵌入了几乎所有的操作系统,j a v a 程序只编译一次,就可在各系统中运行。 j a v a 语言是一个支持网络计算的面向对象程序设计语言。j a v a 语言吸收了s m a l l m l k 语言和c + + 语言的优点,并增加了其它特性,如支持并发程序设计、网络通信、 和多媒体数据控制等。主要特性如下: j a v a 语言是简单易学的。 j a v a 语言是一个纯的面向对象程序设计语言。 j a v a 语言是分布式的。 j a v a 语言是健壮的。j a v a 的强类型机制、异常处理、废料的自动收集等是 j a v a 程序健壮性的重要保证。j a v a 的安全检查机制使得j a v a 更具健壮性。 j a v a 语言是安全的。j a v a 提供了一个安全机制( 类c l a s s l o a d e r ) 以防恶意 代码的攻击。 j a v a 语言是体系结构中立的。j a v a 程序编译为体系结构中立的字节码格式 ( c l a s s 的文件) ,适合于异构的网络环境和软件的分发。 j a v a 语言是可移植的。这种可移植性来源于体系结构中立性,j a v a 系统本 身也具有很强的可移植性,j a v a 编译器是用j a v a 实现的,j a v a 运行环境是 用a n s i c 实现的。 j a v a 语言是解释型的。在运行时,j a v a 平台中的j a v a 解释器对c l a s s 文件 进行解释执行,执行过程中需要的类在联接阶段被载入到运行环境中。 j a v a 是高性能的。 j a v a 语言是多线程的。j a v a 语言支持多个线程的同时执行,并提供多线程 之间的同步机制( 关键字为s y n c h r o n i z e d ) 。 l o 国家海洋局第一海洋研究所硕十学位论文 j a v a 语言是动态的。j a v a 程序需要的类能动态地被载入到运行环境,也可 以通过网络来载入所需要的类。另外,j a v a 中的类有一个运行时刻的表示, 能进行运行时刻的类型检查。 下文提及的s e r v l e t 、j s p 等技术都是j a v a 在服务器端应用的具体形式。 2 2 1 2j a v as e r v l e t j a v as e r v l e t 是j s p 技术的基础,j s p 本身就是预先被编译成s e r v l e t ,然后再运 行,而且大型的w e b 应用程序的开发需要j a v as e r v l e t 和j s p 配合才能完成。s e r v l e t 其实和传统的c g i 程序、i s a p i 、n s a p i 等w e b 程序开发工具的作用是相同的, 在使用

温馨提示

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

评论

0/150

提交评论