毕业设计(论文)-基于J2EE的中彩在线办公自动化系统的设计与实现.doc_第1页
毕业设计(论文)-基于J2EE的中彩在线办公自动化系统的设计与实现.doc_第2页
毕业设计(论文)-基于J2EE的中彩在线办公自动化系统的设计与实现.doc_第3页
毕业设计(论文)-基于J2EE的中彩在线办公自动化系统的设计与实现.doc_第4页
毕业设计(论文)-基于J2EE的中彩在线办公自动化系统的设计与实现.doc_第5页
已阅读5页,还剩74页未读 继续免费阅读

下载本文档

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

文档简介

中文摘要摘 要oa系统即办公自动化系统,是office automation system的简称,它可以实现自动化式的办公工作业务处理。oa系统利用先进的软件开发技术以及网络技术使人们从传统的、低效的、纷繁复杂的纸质业务活动解脱出来,从而逐步转变为高效的、可靠的各种人机系统来协助完成,大大提高了工作效率和工作质量,使得生产效率得到进一步的提升。通过oa可以完成各种信息的实时交流、公文流转、会议管理、车辆管理、审批活动等等的应用,oa已经成为我们日常办公中不可缺少的一部分。本文通过分析当前某中彩在线的发展现状,在单位原有网络的基础上,根据行政管理的需求,结合该中彩在线的实际情况,设计并开发了这套办公自动化系统。本文的主要工作如下: 首先阐述了与该项目的开发背景以及相关的技术和开发框架,并且着重研究了如何采用asp.net技术进行开发。 详细描述了该中彩在线办公自动化系统的设计过程,包括系统总体设计、模块设计,提出采用mvc模式实现系统的web应用模型。 阐述了邮件管理、公文流转、个人事务管理、信息快递管理以及系统管理这几个主要模块的实现过程。 论文最后对系统的测试过程进行了总结。经测试,各模块的功能基本适应了该中彩在线行政管理办公的初步需要。本文所设计的系统解决了该中彩在线原有很多应用系统如人事系统和报文系统等相互独立、且需要单独的客户端、且存在信息不对称等情况。本系统把中彩在线的各个独立信息系统集为一身,能够实现随时异地在线办公。关键词:电子政务,办公自动化系统,asp.net,webv英文摘要abstractoa system, which is short for office automation system, can process automatically office work. oa system frees people from the traditional, inefficient, and complex business paper work with advanced software development technology and network technology. it gradually develops into an efficient and reliable system which greatly improves the efficiency and quality of work and production. various activities such as real-time exchange of information, document flow, meeting management, vehicle management, and approval of activities can be done with oa, which has become indispensable in our daily office work. by analyzing the current situation and development of xx college, this thesis, on the basis of its original network, designed and developed this office automation system to meet its administrative requirements. the main work is as follows: it elaborates on the background and relevant technical and development framework with its focus on how to develop with asp.net technology. it gives a detailed description of the designing process of xx universitys administrative office system, including system design and module design. it also proposes to make web application model with mvc pattern. it describes the management of several major modules such as the e-mail management, document flow, personal affairs management, information management and delivery system. finally, the process of system-testing was summarized. by testing, functions of each module can meet the basic needs of xx university administration office network. in this thesis, the system designed can solve many problems of xx college applications such as the independence of personnel system and message system, the need for a separate client, and asymmetric information etc. the system makes it possible to finish remote online office work with the combination of various individual company information systems.key words: e-government,office automation system,asp.net,web目 录目 录摘 要iabstractii目 录iii1 绪论11.1 课题研究背景11.2 国内外研究现状11.3 研究目的和意义21.4本论文的研究主要内容41.5本文的组织结构42 系统开发关键技术62.1 j2ee平台62.1.1 j2ee体系架构62.1.2 j2ee服务技术82.1.3 j2ee平台的优势92.2 框架102.2.1 mvc构架102.2.2 struts2技术框架122.2.3 hibernate技术框架142.2.4 spring技术框架142.2.5 log4j技术142.3 基于ssh的分层体系结构152.3.1 ssh 的整合策略152.3.2 ssh的分层体系结构152.3.3 ssh的整合后的特点172.4 系统运行环境和开发工具172.4.1 系统运行环境172.4.2 系统开发工具182.5 本章小结183 需求分析193.1 系统的开发目标193.2 系统角色定义193.3 系统的功能需求203.3.1 个人工作管理模块203.3.2 报文管理模块213.3.3 人事管理模块233.3.4 信息快递管理模块243.3.5 系统管理模块253.3.6 其它信息管理模块263.4 系统的软硬件环境263.5 系统网络拓扑图273.6 本章小结274 办公自动化系统的设计294.1 系统设计目标294.2 系统模块设计294.2.1 个人工作管理304.2.2 人事管理324.2.3 报文管理344.2.4信息快递管理354.2.5 系统管理模块364.2.6 其它信息管理374.3 数据库设计394.4 本章小结435 办公自动化系统的实现445.1 数据库连接的封装445.2 用户验证码的实现475.3 登录界面495.4 系统模块实现515.4.1 个人工作管理的实现515.4.2 人事管理的实现535.4.3 系统管理的实现585.4.4 其它信息管理的实现625.5 本章小结666 系统测试676.1 系统测试基本概念676.2 测试用例实例686.3 本章小结707 总结与展望71致 谢72参考文献731 绪论1 绪论1.1 课题研究背景计算机与互联网技术的发展改变了人类的活动方式,促进了世界的信息化与自动化进程。在信息化时代,企业单位的办公模式也要与时俱进,进行信息化与自动化建设。在信息时代,无论哪个单位,都需要处理大量的公文以及复杂的业务流程,同时决策者还要依据繁杂的办公业务处理结果来对企业单位下一步的运营与管理方案做出决策。传统的办公模式存在着诸多的弊端:员工缺乏自我管理意识,在工作计划方面难以做到合理、适当安排;公文、档案、通知文件等都需要打印,不仅浪费资源,而且文件保管以及传达效率低下;内部审批手续繁杂,无论是请假还是申请办公资源,都需要填写大量单据,缺乏系统化流程管理。传统的办公模式已经难以适应信息时代的大数据量办公业务需求。办公自动化系统对我国福彩的可持续发展意义深远。在系统应用之前,各部门的公文、档案、通知文件等主要依赖书面材料和口头形式,不仅效率低,而且容易出错,延误办公。系统建成后,公文的流转通过电子化形式进行传递、接收,保证资料的完整性和连续性,做到有据可依、有文可查。中彩在线办公自动化系统的提出是福彩进入现代化管理的重要过程,它改变了以往低效、复杂的办公模式,解决了内部办公人员迅速采集数据、传达信息、辅助决策的需求,规范化了办公人员的日常管理,增加了中彩在线内部组织的可控性与运转效率。1.2 国内外研究现状随着科学技术特别是信息技术的飞速发展,信息化越来越多的深入到各种办公管理工作中来,使得人们能从繁琐的、重复的工作中解脱出来,以能充分发挥个人的想象力和创造力,充分发挥个人的智慧和潜能,大大的提高了生产力。传统的管理方式不仅效率低下,而且容易造成整个办公环境的无序、推诿和混乱等等诸多问题的发生,管理成本居高不下且收效甚微,不能建立起健康、高效的办公室文化。办公自动化系统是当前流行的网络办公软件最主要的代表,它相比于单机应用软件,具有更强大的生命力。在这一潮流之下,我国相继颁布行政许可法以及电子签章法,两部法律的颁布对办公自动化的发展起到了积极的推动作用4,其中行政许可法就明确许可申请可采用电子数据交换和电子邮件的方式,同时还明确行政机关应推行电子政务。在我国,办公自动化系统的发展主要经历了四个发展阶段:第一阶段是文件型,大约从上世纪80年代到90年代末;第二阶段是流程型,大约从2000年到2005年;第三阶段是知识型,大约从2005年到2008年;第四阶段是智能型,从2008年一直到现在。我们从中可以发现,在发展初期是比较慢的,随着对办公自动化的了解与熟悉,第二第三阶段用了还不到10年时间,但是智能化阶段似乎遇到了瓶颈。当前的办公自动化的主流技术主要分为三类:第一类是基于微软的.net开发平台和关系型数据库的办公自动化系统,比如银华的exoa、领航oa等,它的主要优点是功能强大,容易使用。第二类是基于ibm lotus domino技术的办公自动化系统,比如用友公司、合强公司、金蝶公司等开发的办公自动化软件,它的主要优点是注重协同合作,安全机制强大。第三类是基于sun公司的rdb和java技术的办公自动化系统,比如通达科技等,它的主要优点是具有开放性以及跨平台性。在oa发展的初期,一个oa系统往往只关注于单个或者是局部资源的管理,这样就使得在日常的办公中不能形成一个有效的统一开放的应用平台来将各个资源的管理工作紧密协调起来,比如,在一个中彩在线中,除了行政办公外,可能还会有人力资源管理、财务管理、库存管理等多个管理系统同时存在,这些孤立的系统之间不能够实现数据的共享,为了完成一个工作或者是一个工作的流程,往往需要登录多个系统,进行重复的操作,这些针对某一个部门或者是行业的管理软件在局部范围内起到了一定的作用,但是并没有从整体上对办公产生多么大的效益,这就造成了诸如“信息孤岛”、“应用孤岛”和“资源孤岛”等三大难题的出现,由此可见,传统的办公自动化系统,其应用具有局限性以及孤立性。他们很难能够满足中彩在线的需求。因此有人提出了协同应用的概念,并且将这种理念引入到了办公自动化当中。于是便产生了新一代的办公自动化系统-协同办公5。1.3 研究目的和意义本课题的办公自动化系统是一款协同办公系统。它同时集成了当前最好的管理理念与开发技术。该系统地设计开发的目的是以人为本,努力的帮助用户将资源共享,规范其工作流程,推动政务的执行6 7。该系统的开发设计采用了三层架构,它具有如下的优点:跨平台使用,跨数据库使用,跨架构使用。它还允许用户进行随意添加业务系统,从而构建数据处理中心。该系统所起到的作用在于此,通过该系统的理念和应用,我们会清晰的发现该系统通过帮助组织建立清晰的办公流程,扁平的组织架构,透明的反馈和沟通系统,迅速的决策和执行体系,来提高组织内部的管理和办公能力,建立一个协调统一、反应敏捷的组织机制8。办公自动化就是用信息化手段营造一个统一的平台,使得中彩在线内的每一个工作人员都在同一个桌面环境下工作,从而实现办公过程的数字化和电子化,办公自动化系统具有如下几方面的功能。 办公自动化为企事业工作人员搭建了一个信息发布和交流的平台。用户可以利用便签传阅功能实现各种信息和文件的传阅,避免了在各个pc终端之间不断复制拷贝的工作。可以利用论坛来实现个工作人员之间的情感交流、规章制度管理来实现工作人员对本单位相关规定的学习和掌握、电子公告实现单位信息和相关事件的及时发布、电子期刊实现工作人员对知识的渴望和获取。 办公自动化实现了对工作流程的自动化。在各个单位内都会有各种各样的具有流程性质的工作,比如中彩在线内部对公文的收发、处理、审批、批示等,都是一些具有流程化性质的工作,使用办公自动化系统,可以有效的对流程的各个环节进行监督和跟踪。对中彩在线的风险控制以及各个部门之间的协调工作都有很重要的意义。 办公自动化可以起到辅助办公的作用。我们知道,在中彩在线的日常办公中,往往会有诸如会议室申请、车辆申请、材料购买、物品管理等工作,通过使用办公自动化系统能够很好的实现对这些工作的管理,从而实现对电子化办公的辅助作用。 办公自动化系统可以对文档进行管理。并且可以根据文档的权限,放给不同的工作人员进行保存使用。在以前手动办公的时代,单位内部会留存有很多的办公文档,一般放在文件柜中,我们会很难再翻出来使用。所以其对文档的共享,使用,保存以及再利用都造成了极大的困难。并且当文档出现海量的时候,需要哪一块内容时,无疑是大海捞针,很难对文档进行检索。使用办公自动化系统之后,我们可以对文档进行电子化保存,将它们存在电子柜中,并且可以将电子柜根据用户不同的权限对电子文档进行使用和共享9。如果担心硬盘坏的话,可以多保存在几个地方。对于新工作人员来说,系统管理员可以给他分配一个有一定权限的用户,然后该用户可以对中彩在线的规章制度,学习资料进行查看,这样可以是新工作人员尽快的融入到工作中来,节省了大量的人力,物力和财力。 通过办公自动化系统可以实现中彩在线信息的集成。每一个单位中除了日常了办公外,肯定会存在着如进销存管理、企业erp等各种业务系统,办公自动化系统可以实现和这些业务系统的无缝连接,从而使得各个岗位的工作人员能够及时有效的获取整体的信息,实现很好的协同工作。本办公自动化系统包括前台和后台两部分,前台是ie、firefox等网络浏览器,只要能上网就可以,前台主要功能包括: 工作人员邮件提示,待办业务提醒; 总体信息列表; 日志填写功能等。后台主要是针对管理员进行前台信息、参数、数据库等管理,其功能将决定和影响整个系统的功能。后台主要功能包括: 信息发布; 数据备份和还原; 用户管理; 系统参数设定等。整个系统不仅要满足行政管理人员对管理工作的需要,在政策体现和技术采用上具有前瞻性和超前性;而且,要解决好历史数据的迁移问题,保证系统的安全性、数据的完整性和一致性;第三要保证用户对系统易学易用,对于基于浏览器的程序一般都比较容易上手。总之,最终达到就业信息的科学管理和综合使用,促进某中彩在线行政管理工作的正常开展。1.4本论文的研究主要内容 根据某中彩在线行政管理的需求,进行该中彩在线行政管理办公自动化系统的需求分析; 根据需求分析,进行概要设计与详细设计,包括后台数据库的设计,以及各个功能模块的设计。 使用当前较流行的技术,来实现该系统,并且在最后按照软件工程中的要求,对系统进行系统测试。1.5本文的组织结构本文在结构的组织上,采用了较为常见的组织方式来组织。主要分为七章,各章内容分别如下:第1章 引 言主要介绍了某中彩在线行政管理办公自动化系统开发的背景和国内的研究现状,同时讨论了研究本系统的现实意义。第2章系统开发关键技术,详细介绍了系统开发采用的核心框架及关键技术对struts框架,spring框架以及hibernate框架等技术进行评价和选型。第3章 需求分析本章中,对某中彩在线行政管理办公自动化系统的需求,进行整理和分析,同时用uml的用例图表示出来,为下一步的设计打下基础。第4章 办公自动化系统的设计通过对办公自动化系统的需求分析,我们在这一章对系统进行了设计,同时分析设计了数据模型,建立了数据表的结构。第5章 系统关键技术的实现主要介绍实现本系统过程中,许多关键技术的在是使用过程中,所要注意的事项,用法,以及实现的关键代码。第6章 系统测试本部分对系统进行全面的测试,通过一些测试用例对系统进行测试,保证系统正常运行的情况下,不偏离用户的需求。第7章 总结与展望对该系统在研发过程中的问题,进行分析,提出新的研究热点和工作方向。692系统开发关键技术2 系统开发关键技术现代科学技术包括internet技术的蓬勃发展推动了系统开发设计的不断进步提升,使其成为在j2ee中普遍采用的软件重用技术标准。尤其是框架技术,利用代码重用技术,实现了软件编程、开发速率的极大提升。这里,我们结合自身实际情况,选择能够满足要求的框架技术,以便能够对系统框架快速开发、快速部署和松耦合,是所面临的亟需解决的难题。现阶段,struts框架,spring框架以及hibernate框架等技术是在j2ee平台中广泛流行的框架技术,其具有开源的特性。2.1 j2ee平台j2ee平台主要被应用于进行多层web的构建,以及以服务端相关服务为核心的企业级应用的研究与开发应用,其主要特点是基于标准、且开放的平台,已经被广泛应用在很多系统应用开发之中。制定j2ee的具体规范、具体标准的任务主要由sun企业进行主导控制的,而且ibm、bea等其它企业也为j2ee平台相关标准的制定推广贡献了重要力量,每一种新的j2ee规范标准,都代表着业界的一种广泛共识,即“标准合作,产品竞争”原则,并进一步促使着j2ee技术规范的日益完善1,为各企业厂商推出相关的符合自身需求的产品提供了更为有效简易的手段,也对用户进行产品选择提供了更为丰富的范围。2.1.1 j2ee体系架构针对j2ee体系架构,其基础是j2se技术,以便为企业公司供应更为全面的信息服务,包括安全性、消息等相关服务内容。j2se技术平台为相关java程序的运行供应了较为具体的平台,使其能够很好的支持和管理跨平台上的应用开发;此外,该技术对于内容管理提供了垃圾回收的机制,这就具有了更明显的优势。j2ee技术应用中的具体组件都在j2ee的容器里运行,例如javabean(ejb)、jsp和servlet等,连接器的作用主要体现在对企业管理系统访问上,比如erp管理系统、dbms管理系统等应用程序管理系统。在应用开发过程中,j2ee体系框架可以进行多个客户端的融合,比如无线客户端、个人pc客户端等。j2ee体系框架平台作为一种性能性高、速率快、可靠性高以及伸缩性强的系统运动环境,能够为企业级应用的设计开发提供保证。分布式、多层次的应用开发模式被j2ee体系框架广泛采用。这就意味着,不同的组件通过对应用逻辑层的划分得到,而划分过程中需要考虑其对应的不同功能,然后构成了j2ee实际应用中的不同服务,可以不同的服务器上安装部署相应的应用组件。分布式、多层次j2ee应用环境中应用组件的具体归属决定着划分方式的进行。系统框架开发采用j2ee的分层思想、分布式企业级的应用模型2,把层次模型中各个分布层分割为不同层次的模块,每个模块对应着一种服务,下图2.1给出了经典的一种j2ee四层架构。图2.1 经典的j2ee四层架构fig. 2.1 the four layer structure of j2ee classic根据图2.1可以看出,客户层、中间层以及企业信息系统层三层结构组成,以下分别进行具体描述: 客户层(client layer):前台客户应用端主要体现在该层,其作用在于进行前台屏幕的显示输出功能的实现。基于web的形式和不基于web的形式是j2ee体系架构应用的两种主要形式。对于前者,ie等软件会将web页面和applet下载到客户端电脑上;然而,对于后者,相应的应用客户端软件的运行对客户端的依赖性较高。本文是基于web进行的实际系统开发,故在前台不需要安装任何客户端相关软件,功能应用依靠浏览器就可实现,比如qq浏览器,ie浏览器,google chrome浏览器等。不过,作为客户端的浏览器在基于web的企业级的相关应用中,需要对后台的一些服务器进行访问,比如websphere等,其次再通过获取服务器端数据来实现在客户面前的显示。 表示层(presentation layer):在企业级应用的开发平台中,该层的主要作用在于web层上的相关组件的开发主要是通过jsp页面进行开发应用的,其中在web层的组件中不包括html。其原因在于javabean对象处理系统中可能产生一些系统应用中的数据,随之,输入数据才被传送给实体bean,并进行相关操作与处理。 业务逻辑层(business logic layer):简称业务层,其作用在体系结构中的作用相当于上下两层数据之间承前启后的桥梁,其位于体系架构的中间位置。另外,在系统开发中,程序员改变上层的设计并不会影响到底层的功能模块,这是因为各层之间存在系统松耦合关系,且各层具有朝下的依赖关系,而底层所提供的功能对于上层而言往往是不可见的。在系统系统的设计时,面向对象的相关设计思想往往被用来降低系统的耦合度的目的。鉴于下层服务的调用主要是业务层实现的,其作用也就显而易见,其设计是十分重要的。另外,我们在进行系统设计时,还需考虑这样一个问题,就是系统松耦合问题。业务逻辑层作为系统架构的核心应用部分,主要是为了进行业务逻辑的制定、业务流程的实现等相关的系统设计,也就是说,业务层和系统体系结构中所对应的领域具有较高的逻辑相关性。故业务逻辑层也可以被称为领域层。 企业信息系统层(enterprise information system layer):其含义主要在于负责信息系统中事物处理和数据库管理系统等相关操作。在项目实际应用开发过程中,往往需要根据自身的实际情况来选择不同的层次模型,比如桌面相关应用的开发就可以利用三次模型;四次模型则可以被应用于web相关应用的开发。通过进行多层次模型开发,可以使得应用系统的高内聚性和低耦合性得到更好的保障,而且具有扩展简单、维护方便的特点。2.1.2 j2ee服务技术针对企业级应用的开发平台已经出现很多技术,如collection service、data collection&transaction、naming service和security service等。在容器中可以实现所有的这些服务,而在实际应用中只需要利用相应的j2ee组件对这些服务进行调用即可。 命名服务技术相关应用组件需要相应的开发命名环境才能得以进行,而j2ee提供的命名服务技术的作用主要就体现在这里。比如,提供的java命名、目录服务接口jndi就是一组标准的api,提供了更优的查找、调用等相关功能,同时还可以进行目录的访问。 jdbc系统数据信息的获得的关键主要取决于对低层的数据库的访问、操作等。在这里,sun公司提出了jdbc服务。通过对java数据库进行互联,实现了对存在于j2ee平台和数据库间的连接中可能出现的一些问题的很好解决。jdbc服务主要包括以下三个操作流程:一,建立了与相应数据库的连接;二,传送操作数据库的sql语句;三,结果得到的结果。 java transactionjava transaction服务是一组java事务api接口,jta利用了分布式的形式实现对系统数据的相关处理,也为应用程序对网络访问与数据管理提供了权限。jta保证了数据操作的一致性,也就是说,应用程序访问数据时,要都成功,要么都失败,决不允许出现一部分成功,一部分失败的现象。当事务提交失败时,所有数据通过回滚对数据前后的一致性进行协调。另外,数据事务有一个原则性的概念,那就是数据必须是一个不可再分割的整体。jta其另外一个作用就在于对应用程序数据的正确性进行保障。 security technologyjaas(java验证和授权服务)为了确保能够较好运行客户端、服务端的java应用程序,提供了一种灵活可伸缩的架构。安全技术的早期应用中,主要是变成java代码来确保数据安全性,这样也可以避免合法用户受到第三方攻击。jaas服务强调了系统服务各层次权限的问题,这样就保证了具有某层次权限即可实现相应的系统服务,并采用相应的配置方式将其融入到系统的应用中。 java connector architectures jca服务即java连接框架,其也是一组标准api,这组标准api接口的主要作用在连接java企业级应用平台到企业信息系统中得以体现,其中,企业级应用的处理和存储的信息数据主要是eis应用程序,比如erp等,不过,eis的概念是相对、广义概念。遗产系统是指已经使用多年但是即将停止使用的系统被,其可能出现一定程度上的信息孤岛,而且它们可能不是标准的db或者是其他语言的应用程序。而java连接框架这种数据交换机制,能够很好的集成遗产系统与现有新系统之间的关系。 web services technologyweb services technology的特点是可以对外提供一种远程调用服务,这也是web服务技术新的发展方向。数据连接与传输在调用者与远程服务器端间的进行主要通过xml标记语言来实现。java中提供的services technology还有一组标准api,其与extensive-makeup-language和web services protocol密切相关。而且这些标准的api接口在j2ee1.4以后的版本中,已经被集到了j2ee中,并成为j2ee的一个重要组成部分。2.1.3 j2ee平台的优势j2ee平台对于企业级应用系统的开发来说,具有很多的优越特点,这里主要列举以下几点: 单层结构中的数据访问、数据表示以及业务逻辑都集合在一个应用中,其特点在于可维护性差,进行代码修改十分困难,各项功能耦合程度较高,可伸缩性差,而且代码复用性差。两层结构即客户/服务器结构中,大体处理工作主要是由客户方主导,而只是作为传输控制器使用的服务器,控制着应用程序和数据之间的信息传输。而表示层、业务逻辑层和数据层在j2ee平台上基本上被应用程序分割,且针对各层都有一组定义良好的api接口。这就使得其具有明显的优势,即:作为对象服务的业务逻辑层是系统框架的中间层;连接池技术以及多线程技术的应用以及对对象一致性等进行的相关处理,再结合中间层,则可实现服务多个客户的目的。j2ee系统开发平台另一个特点是对系统开发效率的提高具有明显的提升作用。j2ee体系框架采用了组件技术,能够细致分工实现系统的开发,在团队协作中可以多项齐头并进,提升合作效率。另外,该平台还提供了包括划分功能和封装数据的两种重用代码的方法。基于j2ee的企业级应用系统的开发,不仅在提高系统开发效率和优化系统结构上有着较好的优势,在健壮性、移植性、扩展性上都有着良好的表现。因此,可以认为是基于j2ee的应用系统开发模式具有更好的优越性,并能够提供给开发人员一个良好的机制。2.2 框架框架作为一种由系统程序员所定制的应用骨架,有效地提供了一种系统重用设计的思路。换句话说,框架可以看作是可以重复使用的构件,规定着系统应用的一些相关体系结构,并且详细说明了整个设计与构件间的相互关联,以便能为重用具体构件创造良好的上下文关系。在大规模应用重用上需要采用框架技术,其最大的优点是重用性强,而且框架也是以面向对象设计思想设计的系统最好的复用方式。明显地,多层框架的相互关联,较为合理的实现了企业级系统的开发。鉴于代码重用中框架的显著优点,可以很容易地从已有库中开发相应所需要的系统应用。而且,所有的框架构件都需要统一的接口进行事先,以保证各构建的相互通信。针对系统应用程序,框架所提供的重用算法,使得只需将新出现的框架构建直接插入到满足相应符合接口定义的框架之中就可以实现,十分便于我们进行框架设计的重用。2.2.1 mvc构架mvc(model-view-controller)构架是oop遵循的准则,它既不是java语言所独有的程序设计思想,也更不只是仅仅web系统应用开发所专有的开发思想。mvc架构作为软件开发中的一种具体模式,其把应用系统划分为三个不同的层次结构,即:model层、view层以及controller层。mvc模式能够实现程序的非静态设计,并在系统后期的扩展与维护方面具有较好的表现,在系统应用中可以系统的某一部分的服务以及进行代码重用。此外,mvc设计模式还能够大力简化系统的复杂性,以更加明确直观地表达应用系统的结构。服务功能模块可以对应用系统进行分离,并对相应的系统服务功能模块以功能,具体地可以描述如下: 控制器controller其主要作用在于控制系统请求的相关服务的转发,实现相应的功能,并做出相应的判断,以跳转到对应的服务请求。 视图view主要负责应用系统中的前台显示页面进行设计。 模型model主要实现系统程序员对应用系统相关功能模块的编写和数据库程序员对数据管理以及对数据库进行设计。控制器、视图、模型三者之间的相互关系如下图2.2所示。图2.2 mvc架构的设计形式fig. 2.2 the form of designof mvc architecture控制器、视图、模型三者各自对应的的主要功能描述如下:模型model:主要负责封装系统应用程序有关的数据,并进行相应的操作,其与相应的“数据模型”有密切的关系。“模型”具有直接访问底层数据的权限,比如可以直接对相关数据库进行访问。model独立于view层和controller层,且不依靠于两者,这也就是说,最终显示效果以及对应操作手段并不是模型所担心的。但是刷新机制可以将模型中数据变化的具体情况对外显示。刷新机制的实现,需要监测此模型的视图,而且视图可以了解在data model上发生的改变。视图view:理论上,数据库中的数据可以通过视图按需显示,虽然这并不是必须的。另外,视图中一般不存在于应用程序有关的逻辑。视图层不仅能够实现数据库中数据按需显示,而且其往往通过访问其所监测的“数据模型”来实现相应的刷新功能。控制器controller:不同层之间的控制主要是通过控制器来完成的,控制器能够控制应用系统的服务流程,并对处理系统时间作出对应的回应和反馈。到现在为止,系统设计框架得到了较为高速的大发展,而且系统框架已经越来越适合推广应用于mvc架构之中,尤其是针对具有特定需求的中小企业的相关应用来说。而且,mvc能够具有较好的优势对系统软件进行鲁棒性和重用性提高,这也就极大地降低了对于软件后期维护和开发所需的成本代价,提高了效率。2.2.2 struts2技术框架structs2的核心是webwork优秀的设计思想,其通过利用不同拦截器作为处理单元,并将前台用户所提供的具体业务逻辑控制器设为相应处理目标,以建立对应的能够对应用系统前台客户端所发送来的相应服务请求进行处理的控制器代理,与此同时,回调处理系统业务的控制器的相关执行方法,最终的用户请求的相关数据取决于最后的返回值 34。图2.3显示了structs2技术框架的具体工作流程httpservletrequestactioncontextcleanup(清空值栈等)other filters(sitemesh,etc)(其他的一些过滤器)filterdispatcher(过滤器总控)action代理配置管理器struts配置文件action调用拦截器1action映射拦截器2拦截器3action结果拦截器3拦截器2拦截器1tag子系统前台页面httpservletresponse图2.3 structs2技术框架的工作流程fig. 2.3 the form of design of mvc architecture对structs2技术框架中的工作流程,分别进行如下描述: 后台服务器收到用户操作浏览器所发送相关的服务请求,比如用户服务的请求/txts/servicetxt.doc、/servicetest.do等。其中所对应的不同的action执行方式通过过滤器往往是在不同服务请求的前提下进行判断调用。 将前台客户端发送的服务请求通过web work的拦截器自动地提供相关请求,比如验证、工作流、数据上传等请求服务。 进行回调action执行方法。通过获得前台客户端用户具体的服务请求的相应的所有参数,然后再执行底层数据库的操作,该操作可能是存储客户端获取的数据到数据库,也存在很大的可能是从相应的数据库中来实现相应数据与信号的搜索。而action的控制器在实际情况中,利用具体的业务逻辑进而实现对应的服务请求。 action的执行方法回调执行完成后,得到系统服务的调用结果,并将该结果传输到前来客户端的显示浏览器中,以便用户浏览和进一步的处理操作。2.2.3 hibernate技术框架hibernate是一个开源框架,一个开源的orm开发工具,其主要是将系统相应的对象到关系进行映射,hibernate技术框架可以利用java数据库的连接技术来实现轻量级的封装,使得系统程序员可轻易地以oop的思想来操纵底层数据库。而且,在任何jdbc的场合hibernate都具有广泛的适用性,此外,在java的相关桌面应用程序以及web应用项目中也可以被采用,hibernate框架能够很好地完成数据得而持续性长久操作5,尤其是在web中,2.2.4 spring技术框架spring技术框架是创建者是rodjohnson,且是一个开源的技术框架,其主要处理企业级系统复杂度高的问题。spring技术框架的出现,能够通过完成javabean达到以前一些其它技术所具有的功能,比如,ejb等。另外,spring对于任何java应用程序的开发都是有帮助的,尤其是在便捷性、可扩展性以及松耦合方面。这也就是说,spring技术框架的应用范围不是仅限于服务端的一些系统应用的开发之中。spring技术框架是一种较为优秀的框架,其提供了一个便捷、详细、完美的mvc架构框架6。此架构详细具体地划分为了model等、view层以及controller层,并且划分之后具有低耦合的形式。spring提供的mvc架构是基于interface编程的框架,具有较好的灵活性,其真正意义上体现了与视图之间独立性和无关性。对于jsp还是asp的使用情况,视图没有设置强制要求。更深入一个层次,这里允许使用自定义视图,不过需要对相对应的接口进行实现,还要集成自定义的相关视图技术集成。另外,spring mvc框架中控制器返回了一个包含了视图的名字和model的modelandview对象的视图解析方法,也是mvc的一个极大的优势,其中,具体bean的服务名称和相应对象的关系都是由model来提供完成的。其中model是抽象的,且独立于表现层技术,且与任何视图都是不耦合的,这也就使得其系统进行配置时,具有较高的便捷性。而且,jsp等技术都可和spring技术框架一起被整合到系统中。2.2.5 log4j技术随着现代技术的进步,项目开发和部署的敏捷性和快速性需要更高的要求,这也就要求我们能够利用组件的重用技术作为一个明确的方向和操作手段来解决相应的问题。除了相关人员手工完成的日志记录外, apache还为提供了一个很好的日志操作技术log4j技术。log4j技术是apache提供的一个开源项目,其中,日志信息所对应的输出格式、输出日志信心对应的输出位置信息,是控制台还是txt文件还是其他记录器都可以人为地由系统程序员制定。另外,所记录的各条日志信息的安全等级也可以通过自定义,以使得相关的日志操作更加详尽和安全。这样,利用对相关文件的配置来实现以上操作。此外,log4j技术还提供了一些其他的语言接口,比如,能够在c编程语言、c+语言、pl/sql语言等不同的应用中来使用log4j技术工具,其语法格式和具体的用法类似于java应用程序,并为各种不同语言提供了综合、统一的日志模块,方便信息管理以及模块重用。log4j具有较好的可扩展性,通过使用第三方扩展,就可轻而易举地集成log4j日志模块到j2ee应用中。2.3 基于ssh的分层体系结构2.3.1 ssh 的整合策略ssh是当前应用较为广泛的一种java web应用程序的开源框架体系结构,集中了struts、spring以及hibernate,并分别对三者各自的自身特性的进行分析,得出整个系统框架设计所采用的方案是:以spring模式作为开发系统时的中心,向上整合了struts模式的mvc体系架构,往下结合了hibernate对象关系的映射架构,同时进行各个组件之间的相互关系的管理,进而利用spring来实现反转控制,该体系系统业务逻辑不同对象方法的管理是由spring中的事务声明负责来主导的,同时,在spring的异常处理机制监控系统中,进行着各种不同异常的监控管理7。2.3.2 ssh的分层体系结构在ssh的分层体系结构中,对于struts、spring 以及hibernate三者而言,具有其各自的功能与特点。struts所提供的mvc模式,提供了一种清晰分明的逻辑结构,以便能够更层次分明地进行程序编写。其中,主要采用servlet和jsp等技术。体系结构中spring 对相关的业务对象管理,提供了一种一致性方法,能够激发良好的编程习惯,最大程度上对产品进行耦合8。ssh分层体系结构中hibernate能够实现对完全面向对象的进行相应的数据库控制操作,以用来实现持久化,并轻量封装jdbc。图2.4给出了ssh的分层体系结构图。图2.4 ssh的分层体系结构fig. 2.4 ssh layered architecturestruts架构负责web层:通过action处理网页中表单递交相关数据,并回调至相应网页。spring架构负责业务层的管理9:在这里spring实现了将javabean与事物进行统一的管理操作,并将其封装dao层之中,然后集成到hibernate体系中。hibernate架构针对持久层的操作和处理进行相应的主要控制,并实现了对数据库进行crud的相关操作,其中,有一组对应于数据库的hbm.xml文件和po,同时对dao进行了定义。在ssh的分层体系结构中,图2.5给出了对象之间对应的调用流程。图2.5 ssh的分层体系结构的调用流程fig. 2.5 hierarchical architecture of ssh call proces2.3.3 ssh的整合后的特点java ssh框架将struts、spring以及hibernate整合为了一个整体,不过这三者都还具有各自的特点,分别描述如下:struts 架构的mvc设计模式能够提供更为清晰化的设计思路、设计逻辑;spring架构 的ioc与aop设计也为产品的实现提供了最大程度的解耦合; hibernate可以使实体对象更加持久化。当前应用最广泛的j2ee平台是一种三层的结构体系,该三层主要是表现层、中间层以及数据服务层等。其中,系统业务逻辑处理、操作数据和数据验证等内容的进行主要是在中间层之中。经过三层结构处理,客户端就不需要再与相关数据库进行直接交互,而是利用客户端中的一些相应组件建立与中间层的链接,然后再由中间层对数据库进行交互操作等。而三层体系结构中的表现层采用的技术主要是jsp技术,由出现到现在多年的发展、完善以及改进,已经能够实现了在广泛性和稳定性上得到更好的改良。中间层主要采用结合spring框架与hibernate框架进行构建的;同时,为了实现控制层与业务层的相互分离,相应的具体工作可以划分为如下几种形式:web层主要负责mvc结构中的相关控制层,负责的主要工作是控制着其他两层之间的交互,以及相应的业务逻辑层的调用,并在表现层根据用户需求将服务请求获得的服务数据展现出来,这里我们引入了struts。主导逻辑业务实现的service层10。业务层的基础是公共dao层,并通过继承、

温馨提示

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

评论

0/150

提交评论