




已阅读5页,还剩67页未读, 继续免费阅读
(计算机软件与理论专业论文)电子检务系统设计与实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
东北硕士学位论文 摘要 电子检务系统设计与实现 摘要 随着最高检“科技强检”战略的提出和 2 1 3 ”工程的实施,检务系统信息化工程 的实施,为创新办案方式和管理模式,提高办案质量和办案效率,从而逐步实现 检务工作与时俱进,顺应全球新经济的发展,提供了有效的途径。实现“电子检务” 是进入新世纪的需要。本“电子检务”系统的设计标准是依照最高检的检察信息分 类代码、检察信息数据格式及信息交换规范并具有以下技术特点: 系统采用b s 三层架构技术进行设计、开发 采用国际上先进的w e b 编程规范j 2 e e 标准 系统充分利用了j s p 、j a v a b e a n 等先进技术 集成了东软的i - o a 信息发布平台 本系统实现了案件从受理、初查、立案、侦查到结案的全部过程。系统提供 万能报表生成工具,生成高检院统一格式的报表和部门报表;提供工作流机制, 实现工作文书的流转审批;提供文书套打工具,实现法律文书的自动生成及文书 打印功能。 通过大力推行和完善“电子检务”,充分利用其辅助办案、辅助办公及辅助综合 管理的功能,可以实现了办公、办案、管理自动化、智能化和信息化。在高科技 手段的运用下,使得检察院的办案、办公效率和质量得到极大地提高。 本文详细讨论了基于w e b 的检察院办案、办公系统的设计与具体实现,包括 整体设计、详细设计、系统实现。 关键词电子检务w e b 技术b s 模式 一i i 东北大学硕士学位论文 a b s t r a c t e p r o c u r a t o r a t es y s t e m a b s t r a c t t h ep r o c u r a t o r i a lo r g a ni sa no r g a n i z a t i o nw i t hl o t so fi n f o r m a t i o na n dd o c u m e n t f l o w , d o c u m e n te x c h a n g ea m o n g s t a f f , i n q u i r i e so n l a wa n dr e g u l a t i o n ,a n di n q u i r i e so n c a s ee t e a r cu s e dt ob er e l a t i v e l yd i f f i c u l tp r o b l e mi nd a i l yw o r k s t oa c c o m m o d a t et h e r e q u e s t f o rn a t i o n a li n f o r m a t i o nc o n s t r u c t i o na n di m p r o v et h ei n f o r m a t i o nl e v e lf o r p r o c u r a t o r i a lo r g a n ,w ed e v e l o pt h i ss y s t e mm a t c h i n g t h es p e c i f l c t i o n so ft h es u p r e m e p e o p l e sp r o c u r a t o r a t e o f c h i n a a sw e l la st h i ss y s t e mh a sb e l o wf e a t u r e s : u s i n gb st h r e e t i e rt e c h n i q u e t od e s i g na n d d e v e l o p 。u s i n gt h em o s t a d v a n c e dj 2 e e s p e c i f i c a t i o ni nw e bp r o g r a m m i n g 。a p p l y i n gj s p , j a v a b e a ne t c ,a d v a n c e dt e c h i q u e 。i n t e g r a t i n gn e u s o f l sp r o d u e t - - i - o a i n f o n n a t i o np l a t f o r m t h i ss y s t e mh a sr e a l i z e da l lc o u r s ef r o ma c c e p t i n g ,c h e c k ,r e g i s t e ra n di n v e s t i g a t eo f c a s e t h es y s t e mo f f e r st h eo m n i p o t e n tr e p o r tg e n e r a t i o nt o o l ,p r o d u c er e p o r tf o r ma n d r e p o r tf o r m o ft h ed e p a r t m e n tt h a tt h es u p r e m e p e o p l e sp r o c u r a t o r a t eu n i f i e dt h ef o r m ; i to f f e r sm a dm e c h a n i s mo f w o r k f l o wa n dr e a l i z e st h ew o r kt oc i r c u l a t ea n de x a m i n ea n d a p p r o v ed o c u m e n t s ;i to f f e r sp r i n t i n gd o c u m e n t t o o la n dr e a l i z e st h ef u n c t i o nt h a tl e g a l d o c u m e n t s a u t o m a t e l y t u r ni n t ot e x t t h r o u g hp u r s u e i n ga n dp e r f e c t ”e - p r o c u r a t o r a t e ”,u t i l i z ei ta s s i s ta n dh a n d l e ac a s e , a s s i s ta n dh a n d l eo f f i c i a lb u s i n e s sa n da s s i s ta n d s y n t h e s i z e t h ef u n c t i o n so f m a n a g e m e n tf u l l ye n e r g e t i c a l l y , c a nr e a l i z ea n dh a n d l eo f f i c i a lb u s i n e s s ,h a n d l i n ga c a s e ,m e c h a n o g r a p h y , i n t e l l i g e n t w i t ht h ei n f o r m a t i o n i z a t i o n u n d e rh i - t e c ht h e a p p l i c a t i o n so fm e a n s ,m a k e t oh a n d l eac a s e ,h a n d l eo f f i c i a lb u s i n e s sa n dq u a l i t yr a i s e g r e a t l ye f f i c i e n e yp r o c u r a t o r a t e a b o v ea l l ,t h i s p a p e ri n t r o d u c e s s o m ek n o w l e d g ea b o u tt h ew e bp r o g r a m m i n g t e c h n i q u e a sw e l la si tp o i n t so u th o wt od e s i g na n dr e a l i z et h i ss y s t e mb yu s i n gt h e s e t e c h n i q u e s k e y w o r d se p r o c u r a t o r a t e ,w e bt e c h n i q u e ,b sm o d u l e i 一 声明 本人声明所呈交的学位论文是在导师的指导下完成的。论文中取得 的研究成果除加以标注和致谢的地方外,不包含其他人已经发表或撰 写过的研究成果,也不包括本人为获得其他学位而使用过的材料。与 我一同工作的同志对本研究所做的任何贡献均己在论文中作了明确的 说明并表示了谢意。 本人签名: 日期: 炉p r ,彩 东北大学硕士学位论文 第一章引言 1 1 项目背景 第一章引言 随着计算机技术的飞速发展,检察院多年来沿用的基于静态的业务管理系统 已很难适应检察院业务完善和发展的需要。特别是最高检提出以”科技强检”为口号 的信息化快速发展的战略下,整个检察业务的需求也随之而改变。与发达国家的 企业相比,目前我国的企业管理水平,尤其是企业管理手段还处比较落后,突出 表现在企业信息化管理手段的落后。目前信息化管理手段落后的原因有多方面, 除了企业的经营管理意识以外,一个非常主要的原因就是,信息化管理软件本身 的水平不适应中国国情,目前的大部分的企业信息管理件只能解决局部问题,而 且只能适应某一个固定模式,不能随着企业的发展而变化。正是在这样的大环境 下,检察院信息化建设的步伐需要大大加快。 1 2 总体目标 运用现代计算机技术和网络技术,加速我国检察工作现代化进程,提高检察机 关信息的收集和加工能力、全国联动及反应能力、跨国案件处理能力,提高办案科 学性和效率,为我国法制建设和经济建设服务,为各级领导和检察机关提供准确及 时的信息和决策手段。 1 3 具体目标 检察院建设的目标是以计算机为核心,运用计算机技术和方法并综合应用管 理工程、行为科学、信息论、控制论等技术,为人民检察院实现科学管理和提高 工作效率服务。具体地: ( a ) 开发适合各业务部门和管理部门使用的应用软件,实现各项检察业务的计 算机管理,做到办案计算机化、管理现代化; ( b ) 根据办公业务和流程的需要,设计开发办公软件,逐步实现全院的办公 自动化: 东北大学硕士学位论吏第一章引言 f c l 建立检察业务数据库,实现检察业务数据的收集、加工、交换、存储、汇 总,并及时提供查询、检索和各种统训与分析的临时报表、检统报表和台帐; ( d ) 建立全文数掘库,存储各类文件、法律法规、资料等信息,提供灵活方便 的查询检索方法,提高资料查询的效率、准确性和全面性,将电子资料与手工档 案有机的结合在一起: ( e ) 为干警提供历史案件信息支持,为检察院领导提供辅助决策支持; ( f ) 建立案件动态管理系统,使各部门间信息共享,避免各部门繁杂的组卷和 抄卷,节省出时间用于外出侦破案件; ( g ) 建立对下级院的远程动态监控指导系统,为下级院提供政策、法律、技术、 预警、个案的指导; ( i ) 建立与上、下级检察院的数据接1 3 ; ( 1 ( ) 建立和法院、公安系统的数据接口。 2 东北大学硕士学位论文 第二章基于w e b 开发技术 第二章基于w e b 开发技术 i n t e r n e t 应用发展到今天,应用技术日新月异,新技术不断创造着互联网络新 能力。仔细研究现代互联网络的发展,我们可以发现,随着互联网应用的数据驱 动与处理能力的扩展,新一轮互联网应用的战略转变已经拉丌帷幕。而应用程序 服务器则是构架这种崭新应用的关键平台。 让我们回头看看应用计算技术发展的几个主要阶段,便可以了解应用服务器 产生的必然性:最先出现的是主机模式,它是一种单一的体系结构,最大的缺点 就是在应用和用户之间无法实现数据共享及协作。其后便出现了c s ( c l i e n t s e r v e r ) 模式,它解决了数据共享的问题,但分布式协作亦未能实现。随 之又产生了新的问题,基于c s 的这种胖客户机模式使系统的维护和升级成本直 线上升。因此便出现了w e b 技术,它不仅解决了数据共享,而且瘦客户端模式使 系统的维护和升级成本大大减小。w e b 技术的出现,使企业应用系统能有一个简 化的、低廉的、以w e b 为基础的客户端,并重建了一个高效率的、节约的服务器 端。w e b 新型的、以服务器为中心的结构体系使企业摆脱了以往那种需密集人力 资源的、高成本的操作及管理方式,而转向w e b 服务器( 也有人称之为应用服务器) , 把注意力集中到如何建立高效灵活的应用系统上。这种以服务器为中心的体系立 足于数据库服务器的能力、可管理性以及向应用程序提供必需数据的灵活性。 2 1 系统的体系结构 2 1 1 传统的c s 结构 传统的管理信息系统采用c l i e n t s e r v e r 体系结构。在这种体系结构中,应用分 为两大部分:一部分是由多个用户共享所需的功能和信息,即s e r v e r 部分;另一 部分是每个用户所需要的功能和信息,即c l i e n t 部分。c l i e n t 部分执行前台功能, 如管理用户接口、采集数据和接受用户请求等:s e r v e r 部分执行公共服务或存放公 共信息。当用户需要服务或想要得到公共信息时,由c l i e n t 端发出请求,通过专 用接口或o d b c 等将请求发送到s e r v e r 端,s e r v e r 端接到请求后,激活相应的服 务处理请求,并将处理结果送回c l i e n t 端。 3 东北大学硕士学位论文 第二章基于w e b 开发技术 c l i e n t s e r v e r 体系结构有界面友好、执行效率高、丌发周期短等诸多优点,大 部分传统的m i s ( 管理信息系统) 采用的都是这种体系结构。但是在实践过程中, 无论是最终用户还是软件供应商,都渐渐发现了c l i e n f f s e r v e r 体系结构本身固有的 一些缺陷: 21 1 1 客户端维护开销大 在c l i e n t s e r v e r 体系结构中,每一个客户机都要安装所需的应用程序,都包含 数据( 业务) 处理逻辑,使客户端应用程序变得相当大,这种类型的客户机叫“胖 客户”机。“胖客户”机维护费用较大,一旦要对数据处理逻辑进行修改,必须把 新的应用程序分发到每一个客户端;一旦客户机上的应用程序被破坏了或者准备 在同一台客户机上增加其它业务处理单元,就必须重新安装相应的客户端应用程 序。 21 1 2 工作节点的扩展性差 在检察院管理系统中,随着业务量的不断增加,处理的业务点不断增多,这 就对系统工作节点的可扩展性提出了越来越高的要求。由于c l i e n t s e r v e r 体系结构 的一部分业务是在客户机上完成的,所以每增加一个工作节点就不得不在新增的 客户机上安装相应的客户端应用程序。现在检察院业务逐渐向市区、县、镇( 乡) 推广,地方检察院、监所节点扩展规模大、覆盖面广,使得节点的扩展费用越来 越高。 2 1 1 3 安全性差 c l i e n t s e r v e r 体系结构的运行模式允许客户端直接操作数据库服务器中的内 容,这使得系统的安全性受到了很大威胁,也加大了系统安全管理的难度。 2 1 1 ,4 可移植性差 c l i e n t s e r v e r 体系结构可移植性的缺陷体现在两个方面: 第一,系统具有平台相关性。平台相关性是由开发语言造成的,传统的 c l i e n t s e r v e r 体系结构的m i s 系统大多是由v b 、p b 、d e l p h i 、d p 2 0 0 0 等开发工 具开发的,这导致了系统的平台相关性,如果要在另一种操作系统平台上运行同 一个m i s 系统,软件开发商就必须开发出基于新的操作系统的应用程序。 第二,对数据库的类型具有依赖性。c l i e n t s e r v e r 体系结构中对数据库的操作 主要是通过s q l 、存储过程、视图、触发器等实现的,不同的数据库对这些功能 东北大学硕士学位论文第二章基于w e b 开发技术 的支持和实现存在着或多或少的差别。这样当系统的数据库服务器类型发生改变 时,就必须改动大量的源码,甚至会导致移植工作根本无法实现。 2 1 1 5 存在一定程度上的资源浪费 c l i e n t s e r v e r 体系结构中,每一个客户端在向数据库服务器提出请求时都会与 服务器建立一条连接,连接无法共享。这样,当几十个、几百个、甚至成千上万 个客户机同时对服务器进行访问时,就会对服务器造成极其沉重的负担,严重时 会导致服务器崩溃。 2 1 2 先进的b s 结构 b s 结构,即b r o w s e r s e r v e r ( 浏览器服务器) 结构,是随着i n t e r n e t 技术的兴起, 对c s 结构的一种变化或者改进的结构。在这种结构下,用户界面完全通过w w w 浏览器实现,一部分事务逻辑在前端实现,但是主要事务逻辑在服务器端实现, 形成所谓3 - t i e r 结构。b s 结构,主要是利用了不断成熟的w w w 浏览器技术,结 合浏览器的多种s c r i p t 语言( v b s c r i p t 、j a v a s c r i p t ) a na c f i v e x 技术,用通用浏览 器就实现了原来需要复杂专用软件才能实现的强大功能,并节约了开发成本,是 一种全新的软件系统构造技术。随着w i n d o w s9 8 w i n d o w s2 0 0 0 将浏览器技术植入 操作系统内部,这种结构更成为当今应用软件的首选体系结构。显然b s 结构应 用程序相对于传统的c s 结构应用程序将是巨大的进步。b s 结构采用星形拓扑结 构建立企业内部通信网络或利用i n t e m e t 虚拟专网( v p n ) 。前者的特点是安全、 快捷、准确。后者则具有节省投资、跨地域广的优点。须视企业规模和地理分布 确定。企业内部通过防火墙接入i n t e m e t ,再整个网络采用t c p 1 p 协议。 2 1 3b s 结构的特点及优越性 由于c l i e n t s e r v e r 体系结构存在着上述诸多缺陷,9 0 年代随着网络技术在各 行各业的深入应用,i t 行业又出现了一种低费用、低管理开销、并享有c l i e n t s e r v e r 计算模式的优点的新的体系结构三层网络体系结构。如果把c l i e n t s e r v e r 体系 结构称为“胖客户机服务器”计算模式,那么三层体系结构可以称之为“瘦客户 机服务器”计算模式。三层( 或多层) 结构的特点是在两层结构的基础上加入一 个( 或多个) 中间件层。它将c l i e n t s e r v e r 体系结构中原本运行于客户端的应用程 序移到了中问件层,客户端只负责显示与用户交互的界面及少量的数据处理( 如 5 东北大学硕士学位论文第二章基于w e b 开发技术 数据合法性检验) 工作。客户端将收集到的信息( 请求) 提交给中问件服务器, 中问件服务器进行相应的业务处理( 包括对数捃库的操作) ,再将处理结果反馈给 客户机。 与传统的c l i e n t s e r v e r 体系结构相比,三层体系结构存在如下优点: 213 1 客户端零维护 在三层体系结构中,几乎所有的业务处理都是在中间件w e bs e r v e r 卜完成的, 客户端只需要安装支持j a v a 的浏览器即可,不用做任何其它安装和配置工作,所 以也就不存在客户端维护的问题,真正实现了“客户端零维护”。处理业务时,操 作员可以直接通过w e b 浏览器访问w e bs e r v e r 进行业务处理工作。 2 1 3 2 可扩展性好 三层体系结构的可扩展性好体现在以下两个方面: 第一,工作节点的可扩展性好。由于三层体系结构的客户端零维护的特点, 使增加一个工作节点的工作筒单到了只需增加一台装有w e b 浏览器的p c 机或 j a v a d e s k t o p 设备即可。 第二,应用系统的可扩展性好。好的应用系统应该能方便地实现一定程度上 业务的变化和业务单元的增加。三层体系结构采用面向对象的分析和设计模式, 将业务模块都封装到了业务类和服务类中,所以如果一个业务流程变了,或需要 增加一个新的业务模块,只需替换或增加新的业务类和服务类即可。 2 1 3 | 3 安全性好 在三层体系结构中,客户端只能通过w e bs e r v e r 而不能直接访问数据库,这 大大提高了系统的安全性。如果对系统提出更高的安全性要求的话,还可以通过 防火墙进行屏蔽。 2 1 3 4 可移植性好 三层体系结构可移植性的优势体现在以下三个方面: 第一,系统具有平台无关性。三层体系结构的所有应用都是用j a v a 语言开发 的,因此它具有j a v a 语言的切优点,如良好的可移植性,能做到“一次编泽, 到处运行”。1 3 1 箱二,便于数据库移植。由于客户端不直接访问数据库,而是通过一个中问 层进行访问,所以在改变数据库、驱动程序或存储方式时无需改变客户端配置, 6 东北大学硕士学位论文 第二章基于w e b 开发技术 只要集中改变中间件上的持久化层的数据库连接部分即可。 第三,中间件可移植性好。三层体系结构中,中问件移植的关键是s e r v l e t 和 j s p 的移植。s u n 公司为s e r v l e t 和j s p 提供了标准的a p i 和使用规范,保证了程 序丌发的一致性,并使s e r v l e t 具备了一个最大的优点:协议无关性。这些保证了 应i l 日系统方便地从一个一种中间件移植到另一个中间件上。 2 1 3 5 资源重用性好 由于将业务逻辑集中到w e bs e r v e r 统一处理,三层体系结构可以更好地利用 共享资源。例如数据库连接是项很消耗系统资源、影响响应时间的工作,在三 层体系结构中可以将数据库连接放在缓冲浊中统一管理,由不同应用共享,并有 效控制连接的数量。 2 2c s 体系结构与b s 体系结构的比较 2 2 1 程序的规模 两层结构每一个客户机直接连到数据库服务器上,应用程序的规模受到有效 的数据连接数目的限制。两层应用在规模不大时工作得很好,当规模变大时,有 很大问题。三层结构每一台客户机连到中间层,中间层可以管理大量的连接,并 且维持数据库连接不会超过一定的数目。 2 2 2 可靠性 关键服务可以在多个中间件冗余提高可靠性。另外,封装的服务可以减小软 件的缺陷。 2 2 3 灵活性 好的应用易于升级。两层结构一黾丌发成功,增加和减少功能不容易。三层 结构有清晰的模块,开发者容易修改,如果某个商业规则改变了,我们可以用一 个新的封装的服务来代替旧的,而不影响其他所有工作。 东北大学硕士学位论文第二章基于w e b 开发技术 2 2 4 客户端维护 每一个客户应用程序都包含数据处理逻辑,使应用程序变得相当大,这种类 型的客户机叫“胖客户”,维护费用较大。如果要对数据处理逻辑进行修改,必须 把新的应用程序分发到每一个客户端。三层结构把应用逻辑放在中间层,客户端 就叫“瘦客户”。 2 2 5 网络负载 实际处理逻辑在客户端,典型例子是发送s q l 语句到数据库,数据必须从网 络穿过,增加网络流量。 2 2 6 开发工具支持 两层应用有很好的可视化的工具支持。 从上面的比较可以看出,三层结构应用系统在安全性、可扩展性、可维护性、 适应性、开放性、先进性和成熟性等方面较之两层结构而言均有着很大的优势, 尤其对于建设大型应用系统,意义尤为深远。由于电子商务系统的部署,及基于 w e b 的应用逐渐从2 层架构向3 层架构演进,处于3 层结构中间层上的应用服务 器( a p p l i c a t i o ns e r v e r ) 便受到了越来越多的重视,它担负着提供应用丌发环境以及 承载应用服务程序运行的功能,通常也被叫做应用服务中间件。 就像操作系统有u n i x 、w i n d o w sn t 、l i n u x 样,应用服务器也有不同的标 准,其中c o r n 、c o r b a 和j 2 e e 是3 个最主要的,c o r n 局限于w i n d o w sn t ,山 m i c r o s o f t 所倡导;c o r b a 标准能够跨平台,但由于各u n i x 厂商对c o r b a 执行不够 彻底,互联比较困难;而由s u n 公司发起的j 2 e e 是现在市场上的主流产品。j 2 e e 标准是过去几年中开发的许多重要应用最终促成的一个与厂家无关的公共标准。 它将许多分散的j a v a 技术整合到一起,组合成一个完整的企业标准。 2 3j a v a 技术 j a v a 是种简单易用、完全面向对象、具有平台无关性且安全可靠的主要面 向i n t e m e t 的开发工具。自从1 9 9 5 年f 式问世以来,j a v a 的快速发展已经让整个 w e b 世界发生了翻天覆地的变化。 8 东北大学硕士学位论文第二章基于w e b 开发技术 2 3 1j a v a 语言的特点 2 3 1 1 简单性 j a v a 与c + + 相比,不再支持运算符重载、多级继承及广泛的自动强制等易混淆 利较少使用的特性,而增加了内存空间自动垃圾收集的功能,复杂特性的省略和 实用功能的增加使得开发变得简单而可靠2 1 。 简单化的另一个方面是j a v a 的系统非常小,其基本解释和类支持部分只占 4 0 k b ,附加的基本标准库和线程支持也只需增加1 7 5 k b 。因此,j a v a 应用软件能 在相当小的系统之上独立工作1 6 】。 2 3 1 2 平台独立陛 这是j a v a 最吸引人的地方。由于它采用先编译成中间码( 字节码) ,然后装载 与校验,再解释成不同的机器码来执行,即“j a v a 虚拟机”的思想,“屏蔽”了具体的 “平台环境”特性要求,使得只要能支持j a v a 虚拟机,就可运行各种j a v a 程序 ”。 2 3 1 3 面向对象的技术 面向对象( 0 o ) 的技术是近年来软件开发中用得最为普遍的程序设计方法, 它通过把客观事物进行分类组合、参数封装、用成员变量束描述对象的性质、状 态,而用方法( 成员函数) 来实现其行为和功能。o 一0 技术具有继承性、封装性、 多态性等众多特点,j a v a 在保留这些优点的基础上,又具有动态联编的特性,更 能发挥出面向对象的优判”。 2 3 1 4 多线程 多线程机制使应用程序能并行执行,j a v a 有一套成熟的同步原语,保证了对共 享数据的正确操作。通过使用多线程,程序设计者可以分别用不同的线程完成特定 的行为,而不需要采用全局的事件循环机制,这样就很容易实现网络上实时的交互 行为。 2 3 1 5 动态性 j a v a 的设计使它适合于一个不断发展的环境。在类库中可以自由地加入新的 方法和实例变量而不会影响用户程序的执行。并且j a v a 通过接口来支持多重继承, 使之比严格的类继承具有更灵活的方式和扩展性。 9 东北大学硕士学位论文 第二章基于w e b 开发技术 23 16 安全性 j a v a 有建立在公共密钥技术基础上的确认技术指示器语义的改变将使应用程 序刁i 能再去访问以前的数据结构或是私有数据,大多数病毒也就无法破坏数掘因 而,用j a v a 可以构造出无病毒、安全的系统。 j a v a 语言除上述主要特点外,还有高性能、分布性、强大性、解释性、可移 植性等,正是基于这些特点,本系统采用j a v a 语言来开发。 2 3 2j a v a b e a r l s 什么是j a v a b e a n s ? j a v a b e a n s 就是j a v a 的可重用组件技术。a s p 通过c o m 来扩充复杂的功能,如文件上载、发送e m a i l 以及将业务处理或复杂计算分离出来, 成为独立可重复利用的模块。j s p 通过j a v a b e a n s 实现了同样的功能扩充。j s p 对 于在w e b 应用中集成j a v a b e a n s 组件提供了完善的支持。这种支持不仅能缩短丌 发时问( 可以直接利用已经测试和可信任的已有组件,避免了重复丌发) ,也为j s p 应用带来了更多的可伸缩性。j a v a b e a n s 组件可以用来执行复杂的计算任务或负责 与数据库的交互以及数据提取等。开发起来简单,又可以利用j a v a 语言的强大功 能,许多动态页面处理实际上被封装到了j a v a b e a n s 中 6 1 。 2 3 _ 3j d b c j d b c 是用于执行s q l 语句的j a v a 应用程序接口,由一组j a v a 语言编写的类 与接口组成,在j s p 中将使用j d b c 来访问数据库。j d b c 是种规范,它让各数 据库厂商为j a v a 程序员提供标准的数据库访问类和接口,这样就使得独立于 d b m s 的j a v a 应用程序的开发工具和产品成为可能。一般的j a v a 丌发工具都带有 j d b c o d b c 桥驱动程序,这样,只要是能够使用o d b c 访问的数据库系统,也 就能够使用j d b c 访问了1 2 8 1 o 2 3 4j 2 e e 电予商务和信息技术的快速发展以及对它们的需求给应用程序开发人员带来 了新的压力。必须以比以前更少的金钱、更少的资源来更快地设计、开发企业应 用程序。 为了降低成本,并加快企业应用程序的设计和开发,j 2 e e 平台提供了一个基 于组件的方法来设计、开发、装配及部署企业应用程序。j 2 e e 平台提供了多层的 1 0 东北大学硕士学位论文第二章基于w e b 开发技术 分布式的应用模型、组件再用、一致化的安全模型以及灵活的事务控制。刮以用 比以前更快的速度向市场推出创造性的客户解决方案,而且平台独立的、基于组 件的j 2 e e 解决方案不会被束缚在任何一个厂商的产品和a p i 上。 j 2 e e 规范定义了阱下种类的组件: 1 应用客户组件 2 e n t e r p r i s ej a v a b e a n s 组件 3 s e r v l e t 及j a v a s e r v e rp a g e ( j s p 页面) 组件( 也被称作w e b 组件) 4 a p p l e t 一个多层的分布式应用模型意味着应用逻辑被根据功能划分成组件,并且可 以在同一个服务器或不同的服务器上安装组成j 2 e e 应用的这些不同的组件。个 应用组件应被安装在什么地方,取决于该应用组件属于该多层的j 2 e e 环境中的哪 一层。这些层是客户层、w e b 层、业务层及企业信息系统层( e i s ) 等。1 4 1 2 3 4 1 客户层 j 2 e e 应用可以是基于w e b 的,也可以是不基于w e b 的。在一个基于w e b 的 j 2 e e 应用中,用户的浏览器在客户层中运行,并从一个w e b 服务器下载w e b 层 中的静念h t m l 页面或由j s p 或s e r v l e t 生成的动态h t m l 页面。在一个不基于 w e b 的j 2 e e 应用程序中,一个独立客户程序不运行在一个h t m l 页面中,而是 运行在其他一些基于网络的系统( 比如手持设备或汽车电话) 中,a p p l e t 程序在 客户层中运行,并在不经过w e b 层的情况下访问e n t e r p r i s eb e a n s 。这个不基于 w e b 的客户层可能也包括一个j a v a b e a n s 类来管理用户输入,并将该输入发送到企 业层中运行的e n t e r p r i s eb e a n s 类来进行处理。根据j 2 e e 规范j a v a b e a n s 类不被视 为组件。 为j 2 e e 平台编写的j a v a b e a n s 类有实例变量和用于访问实例变量中的数据的 “g e t 和s e t 方法”。以这种方式使用的j a v a b e a n s 类在设计和实现上通常都是简单 的,但是它们必须符合j a v a b e a n s 规范中列出的命名和设计约定。 2 3 4 2w e b 层 j 2 e ew e b 组件可以由j s p 页面、基于w e b 的a p p l e t 以及显示h t m l 页面在 应用程序组装时与w e b 组件打包在一起。就像客户层一样,w e b 层可能包括一个 j a v a b e a n s 类来管理用户输入,并将输入发送到业务层中运行的e n t e r p r i s eb e a n s 类 来进行处理。运行在客户层的w e b 组件依赖容器来支持诸如客户请求和响应及 东北大学硕士学位论文第二章基于w e b 开发技术 e n t e r p r i s eb e a n s 查询等。 2 3 4 3 业务层 作为解决或满足某个特定业务领域需要的逻辑的业务代码由运行在业务层的 e n t e r p r i s eb e a n s 来执行。一个e n t e r p r i s eb e a n s 从客户程序处接收数据,对数据进 行处理( 如果需要) ,再将数据发送到企业信息系统层存储起来。一个e n t e r p r i s e b e a n s 还从存储中检索数据,并将数据送回客户程序。运行在业务层的e n t e r p r i s e b e a n s 依赖于容器来为诸如事务、生命期、状态管理、多线程及资源存储池等提供 通常都非常复杂的系统级代码。业务层经常被称作e n t e r p r i s eb e a n s ( e j b ) 层。业 务层和w e b 层一起构成了3 层j 2 e e 应用的中间层,而其他两层是客户层和企业信 息系统层。 2 34 4 企业信息系统层 企业信息系统层运行企业信息系统软件,这层包括企业基础设施系统,例如 企业资源计划( e r p ) 、大型机事务处理( m a i n f r a m et r a n s a c t i o n p r o c e s s i n g ) 、数据 库系统及其他遗留信息系统( 1 e g a c yi n f o r i n a t i o n s y s t e m s ) 。j 2 e e 应用组件因为某 种原因( 例如访问数据库) 可能需要访问企业信息系统。j 2 e e 平台未来版本将支 持c o n n e c t o r 架构,该架构是将j 2 e e 平台连接到企业信息系统上的一个标准a p i 。 2 3 4 5 查询服务 因为一个j 2 e e 应用程序的组件是单独运行的,并且往往在不同的设备上运行, 因此,需要一种能让客户层和w e b 层代码查询并引用其他代码和资源的方法。客 户层和w e b 层代码使用j a v a 命名和目录接口( j n d i ) 来查询用户定义的对象( 例 如e n t e r p r i s eb e a n s ) 、环境条目( 例如一个数据库驱动器的位置) 、企业信息系统 层中用于查找资源的j d b cd a t a s o u r c e 对象,以及消息连接。 2 3 46 安全和事务管理 诸如安全和事务管理这样的应用行为可以在部署时在w 曲和e n t e r p r i s eb e a n s 组件上进行配置。这个特征将应用逻辑从可能随装配而变化的配置设定中分丌了。 j 2 e e 安全模式允许配茕一个w e b 或e n t e r p r i s eb e a n s 组件,使系统资源只能 由授权的用户访问。例如,一个w e b 组件可以被配置成提示输入用户名和密码。 一个e n t e r p r i s eb e a n s 组件可以被配置成只让特定团体中的成员调用其某些方法。 或者,一个s e r v l e t 组件可以被配置成让某个组织中的所有人都能访问其某些方法, 1 2 。 东北大学硕士学位论文第二章基于w e b 开发技术 同时只让组织中的某些享有特权的人访问其中一些方法。同样是该s e r v l e t 组件, 可以针对另外一个环境而被配置成让每个人都能访问其所有方法,或者仅让选定 的少数人访问其所有方法。 j 2 e e 事物模型使得能够在部署时定义构成一个单一事务的方法之问的关系, 以使。个事务中的所有方法被处理成一个单一一的单元。这是我们所希望的,因为 一个事务是一系列步骤,这些步骤要么全部完成,要么全部取消。例如,一个 e n t e r p r i s eb e a n s 可能有一组方法,使我们可以通过从第一个帐户借出并存入第二 个帐户的方式而将钱从第一个帐户转移到第二个帐户。我们希望全部的操作被作 为一个单元对待,这样,如果在借出之后存入之前发生了故障,该借出操作被取 消。事务属性是在装配期间定义一个组件上的,这使得能将来自多个应用组件的 方法归到一个事务中。这说明,我们可以轻易变更一个j 2 e e 应用程序中的应用组 件,并重新指定事务属性,而不必改变代码或重新编译。在设计应用组件时,要 记住,尽管e n t e r p r i s e b e a n s 有一个可使应用组件的容器自动启动多步事务的机制, 但是a p p l e t 和应用的客户容器可能并不支持这一点。然而,a p p l e t 和应用客户容 器总是能够调用支持这一点的一个e n t e r p r i s eb e a n s 。还应当注意,j s p 页面和 s e r v l e t 没有被设计成是事务的,它们通常应当将事务工作交给一个e n t e r p r i s eb e a n s 来完成。然而,如果事务工作在一个j s p 页面或s e r v l e t 中是必须的,那么此种工 作也应当是非常有限的。 2 3 ,4 7 可重用应用组件 j 2 e e 组件( a p p l e t 、应用的客户、e n t e r p r i s eb e a n s 、j s p 页面及s e r v l e t ) 都被 打包成模块,并以j a v aa r c h i v e ( j a r ) 文件的形式交付。一个模块由相关的文件 及描述如何组成文件。例如,在组装过程中,一个h t m l 页面和s e r v l e t 被打包进 个模块中,该模块包含h t m l 文件、s e r v l e t 组件及相关的配置描述文件,并以 一个w e b a r c h i v e ( w 久r ) 文件的形式交付,该w a r 文件是一个带,w a r 扩展名的 标准j a r 文件。模块的使用使得利用相同组件中的某些组件来组装不同的j 2 e e 应用程序成为可能。例如,一个j 2 e e 应用程序的w e b 版可能有一个e n t e r p r i s e b e a n s 组件,还有一个j s p 页面组件。该e n t e r p r i s eb e a n s 组件可以与一个应用客户组件 结合,以生成该应用程序的非w e b 版本。这不需要进行额外的编码,只是一个装 配和部署的问题。并且,可重用组件使得将应用开发和部署过程划分成出不同的 角色来完成成为可能,这样,不同的人或者公司就能完成封装和部署过程的不同 部分1 2 7 1 。 1 3 东北大学硕士学位论文 第二章基于w e b 开发技术 2 3 5j a v as e r v l e t j a v as e r v l e t 是j s p 技术的基础,而且大型的w e b 应用程序的丌发需要j a v a s 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 程序丌发工具的作用 是相同的,在使用j a v as e r v l e t 以后,用户不必再使用效率低下的c g i 方式,也不 必使用只能在某个固定w e b 服务器平台运行的a p i 方式来动态生成w e b 页面。许 多w e b 服务器都支持s e r v l e t ,即使不直接支持s e r v l e t 的w e b 服务器,也可以通 过附加的应用服务器和模块来支持s e r v l e t ,得益于j a v a 的跨平台的特性,s e r v l e t 也是平台无关的,实际上,只要符合j a v as e r v l e t 规范,s e r v l e t 是完全平台无关日 是w e b 服务器无关的,由于j a v as e r v l e t 内部是以线程机制可以同时为多个请求服 务,因此j a v as e r v l e t 效率非常高。 但j a v as e r v l e t 也不是没有缺点,和传统的c g 、i s a p 、n s a p i 方式相同,j a v a s e r v l e t 是利用输出h t m l 语句来实现动态网页的,如果用j a v as e r v l e t 来丌发整个 网站,动态部分和静态页面的整合过程简直就是一场噩梦。这就是为什么s u n 推 出j a v as e r v e rp a g e s 的原因。 2 4j s p 技术 2 4 1j s p 技术概述 按照脚本语言是服务于某一子系统的语言这种论述,j s p 应当被看作是一种脚 本语言,然而,作为一种脚本语言,j s p 又显得过于强大了。在j s p 中几乎可以 使用全部的j a v a 类。 作为一种基于文本的、以显示为中心的开
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 发票开具培训课件
- 第四单元《家乡文化生活》教学设计统编版高中语文必修上册
- ttt培训课件 肯德基
- 皮肤衰老培训课件
- 盘双十一活动方案策划
- 小孩百日致辞
- 黑石培训课件
- 校园文化题目及答案
- 小学阅读训练题目及答案
- 2024年汉中市中医医院招聘笔试真题
- 零售药店计算机管理系统操作规程
- 洁净室施工培训
- 新生儿糖尿病喂养指导
- 山西省太原市(2024年-2025年小学五年级语文)统编版期末考试(下学期)试卷及答案
- 住院患者跌倒、坠床、压力性损伤的风险评估及管理
- 2023风光互补路灯设计方案
- 2023年山东省夏季普通高中学业水平合格考试会考生物试题及参考答案
- 2024年山东省青岛市中考英语试卷附答案
- 材料力学(山东联盟-中国石油大学(华东))智慧树知到期末考试答案章节答案2024年中国石油大学(华东)
- 江西省南昌二中心远教育集团九湾学校2023-2024学年八年级下学期期末考试物理试题
- 深入理解Nginx(模块开发与架构解析)
评论
0/150
提交评论