收藏 分销(赏)

云计算主机体验系统的设计与实现.doc

上传人:仙人****88 文档编号:11263381 上传时间:2025-07-12 格式:DOC 页数:51 大小:1.99MB 下载积分:10 金币
下载 相关 举报
云计算主机体验系统的设计与实现.doc_第1页
第1页 / 共51页
云计算主机体验系统的设计与实现.doc_第2页
第2页 / 共51页


点击查看更多>>
资源描述
黑龙江工程学院本科生毕业设计 摘 要 云计算是网格计算、分布式计算、并行计算、效用计算、网络存储、虚拟化、负载均衡等传统计算机和网络技术发展融合的产物,是目前比较流行的名词,用来形容一种事物的强大。 通过使计算分布在大量的分布式计算机上,而非本地计算机或远程服务器中,企业数据中心的运行将与互联网更相似。而云计算主机体验系统就是这么个提供云主机供用户来使用的平台,系统中可免费供用户试用云主机服务,系统主要有四大管理模块,账户管理,主机管理,邀请码管理,后台管理。该设计采用的spring mvc模型,前端用的是JavaScript技术,底层调用的云系统Nimbula的api接口。用户可以按系统的流程操作,成功获得所属的型号主机,节省个人用户花大价钱在个人PC上,削减企业用户购买计算机的开销。 关键词:云计算;云主机;主机体验; 虚拟化平台;分布式 ABSTRACT Cloud computing, grid computing, distributed computing, parallel computing, utility computing, virtualization, network storage, load balancing and other traditional development of computer and network technology integration of the product, is a popular term used to describe a thing, a powerful. By making the calculation in many distributed computer, rather than the local computer or a remote server, enterprise data center operation will be more similar with the internet. But cloud computing host experience system is such a cloud hosting for the users to use the platform, system can be free for the user trial cloud hosting services, system has four main management module, account management, management of the host, to invite a code management, backstage management. The design adopts the spring MVC model, the front end is used JS technology, the call cloud system Nimbula API interface. The user can press the system process operation, success belongs to the type of host, to save the individual user to spend big price in individual PC, reduce enterprise users to buy computer overhead. Key Words: Cloud Computing; Cloud Host; Host Experience; Virtualization Platform; Distributed 46 黑龙江工程学院本科生毕业设计 目 录 摘要 I ABSTRACT II 第1章 绪论 1 1.1 选题背景 1 1.2 目的和意义 1 1.3 本设计的主要工作 2 1.4 系统的设计思想 2 1.5 项目开发的过程描述 2 第2章 系统可行性分析 4 2.1 系统设计前期分析 4 2.1.1 系统需求的任务概述 4 2.1.2 系统运行环境要求 4 2.2 软件系统的可行性分析 4 2.3 软件系统的需求分析 6 2.4 本章小结 7 第3章 系统总体设计 8 3.1 系统总体方案设计 8 3.2 系统项目功能分析 8 3.3 系统业务流程分析 9 3.4 课题实现的技术基础与设计思想 10 3.5 系统各模块功能设计 16 3.6 本章小结 17 第4章 系统详细设计及实现 18 4.1 前台部分 18 4.2 后台部分 18 4.3 底层部分 18 4.4 数据库分析与设计 19 4.4.1 数据分析 19 4.4.2 数据库的详细设计 20 4.5 系统实现 23 4.5.1 登录的实现 23 4.5.2 注册的实现 23 4.5.3 申请邀请码的实现 27 4.5.4 邮件发送的实现 29 4.5.5 修改密码的实现 30 4.5.6 申请云主机的实现 32 4.5.7 主机的操作 33 4.5.8 后台展示邀请码 34 4.6 本章小结 34 第5章 系统测试 36 5.1 软件测试的目的和原则 36 5.2 单元测试 38 5.3 界面测试 38 5.4 功能测试 38 5.5 本章小结 39 结论 40 参考文献 41 致谢 42 附录 43 第1章 绪 论 1.1 选题背景 云主机是新一代的主机租用服务,它整合了高性能服务器与优质网络带宽,有效解决了传统主机租用价格偏高、服务品参差不齐等缺点,可全面满足中小企业、个人站长用户对主机租用服务低成本,高可靠,易管理的需求。 在香港、美国已经非常流行云主机,大陆才刚刚兴起,这是一个可以取代现有服务器的新方向。大部分中小企业认为,只有一些资金实力雄厚的大型企业和政府机构才用得起也用得上云计算,而对中小企业来说,云计算的门槛过高,还显得遥不可及。 但当今互联网的迅猛发展已势不可挡,像单点故障、升级扩展困难、起步门槛高、网站存在波峰波谷挑战等传统难题,已严重阻碍了中小企业在互联网领域的快速发展。虽然云计算服务的出现可以帮助企业解决这些难题,但在大多数用户眼里,这还只是一个未知数。在国外亚马逊是云主机应用的开创者,已经把云主机的各种服务做得相当到位,虽然中国做云主机的有盛大云,阿里云,还有世纪互联。但是服务始终不能做到与之媲美,租用主机不是很方便,所以云计算服务中云主机的体验是相当重要的,并且在国内有很大的市场前景。 1.2 目的和意义 云主机是一种类似VPS主机的虚拟化技术, VPS是采用虚拟软件,VZ或VM在一台主机上虚拟出多个类似独立主机的部分,每个部分都可以做单独的操作系统,管理方法同主机一样。 而云主机是在一组集群主机上虚拟出多个类似独立主机的部分,集群中每个主机上都有云主机的一个镜像,从而大大提高了虚拟主机的安全稳定性,除非所有的集群内主机全部出现问题,云主机才会无法访问。 在日常购物当中,先试后买已经成为约定俗成的规矩。例如买衣服,不试穿就下单很可能造成“ 削足适履 ”的尴尬。而在IT行业,软硬件几乎全部采用先付费再使用的售卖方式。也就是说,一旦企业所购买的产品不适合自身发展需求,在浪费金钱的同时也会消耗了大量的时间成本。 因此产生了做虚拟服务也就是云主机的相关产品,但是还不知道这种产品会在市场上的盈利和用户,所以就打算做一个试用产品。在功能上,试用期间的云主机与市面上购买云主机完全一致,希望这让用户对云计算的体验更为真实可靠。 1.3 本设计的主要工作 本设计主要是运用spring mvc框架基于java的平台,该平台提供免费云主机试用的服务,主要包括账号管理,邀请码管理,云主机管理,和后台管理。用户注册成为会员,经过后台的审核通过后,下发邀请码,根据自己所拥有的邀请码来申请云主机,申请成功后可对自己所属的云主机进行开关机的操作。 1.4 系统的设计思想 一个优秀的应用系统,必须有一个正确的设计思想,通过合理地选择数据结构、操作系统以及开发环境,构成一个完善的体系结构,才能充分发挥计算机应用的优势。根据购买者的实际需求,本系统的设计按照下述原则进行。 1、实用性 系统以用户需求为目标,以方便用户为原则,同时融入先进的设计思想。根据用户实际的需求情况,量身制作一个功能齐全、操作简单、实用性强,充分满足购物者的需求,真正成为为用户提供快捷、方便的工具。 2、先进性 本系统将充分应用现有成熟的计算机技术、软件开发技术,为用户提供高性能的系统,可以方便的实现用户的需要。 3、高可靠性 一个实用的系统同时必须是可靠的,本系统通过合理而先进的结构设计以及软、硬件的优化选型,可保证系统的可靠性与容错性。 4、可维护性 系统的设计要求方便维护。 5、可扩展性及灵活性 系统的设计以方便未来业务的扩展和系统扩充为目标,系统要求能够方便的浏览,充分保护系统的投资。 6、智能性 智能化是这个系统软件的一大特色。系统在设计时,充分考虑后台的管理,每一个系统考虑得很周密。 1.5 项目开发的过程描述 项目的开发过程分为以下几个阶段: 1、系统需求分析阶段 在这个阶段,我们应获取详细的用户需求,获取该软件的业务流程以及基本功能;对比用户的需求相应的收集相关资料并进行整理;确定软件开发的范围。 2、系统总体设计阶段 这个阶段,简单的说就是“应该如何简单的去解决问题”。包括确定设计思想、设计框架及在遇见困难时的解决方法。 3、系统详细设计阶段 通过对系统总体的设计,将功能进行细分并进行归类,将各个模块“独立”起来,从而让这个系统可以很好的集体开发,以增加开发的效率。 4、系统模块实现阶段 通过对各个模块的设计,每个成员根据各个模块要求的功能及用户的需求,实现自己的模块。 5、系统模块的测试阶段 当每个成员完成自己的模块后,对自己的模块进行测试,可以采用交叉测试。 6、系统的总体测试阶段 整合各个模块,对系统进行总体测试。 7、文档的整理及总结阶段 对自己在开发中所用的资料文档进行整理,给该设计提供资料及文档。最后,对此软件进行评价,指出不足和长处,以方便以后系统的升级。 系统严格按照软件工程的规范来管理系统的整个开发过程。 第2章 系统可行性分析 2.1 系统设计前期分析 2.1.1 系统需求的任务概述 系统设计实现的任务如下: 1、用户的管理 2、邀请码的管理 3、主机的管理 4、后台的管理 5、邮件的自动发放 2.1.2 系统运行环境要求 该系统的运行环境有微软的Internet Explorer、Mozilla的Firefox、Apple的Safari、Google Chrome浏览器是最经常使用到的客户端程序。之所以选用这四种浏览器,是因为这四款浏览器是市面上的主流浏览器,总共占市场份额的76.3%,符合大众用户的浏览习惯。 1、操作系统 Windows XP以上 2、硬件环境 CPU:Pentium4单核处理器以上 内存:512M以上 硬盘:没有限制要求 3、开发环境 Eclipse IDE for Java EE Developers win7环境 系统其他要求:无 2.2 软件系统的可行性分析 可行性分析是通过对项目的主要内容和配套条件,如市场需求、资源供应、建设规模、工艺路线、设备选型、环境影响、资金筹措、盈利能力等,从技术、经济、工程等方面进行调查研究和分析比较,并对项目建成以后可能取得的财务、经济效益及社会环境影响进行预测,从而提出该项目是否值得投资和如何进行建设的咨询意见,为项目决策提供依据的一种综合性的系统分析方法。可行性分析应具有预见性、公正性、可靠性、科学性的特点。 1、软件系统的投资可行性分析 主要根据市场调查及预测的结果,以及有关的产业政策等因素,论证项目投资建设 的必要性。在投资必要性的论证上,一是要做好投资环境的分析,对构成投资环境的各种要素进行全面的分析论证,二是要做好市场研究,包括市场供求预测、竞争 力分析、价格分析、市场细分、定位及营销策略论证。该系统在国内已经很有竞争力了,中国做云主机的有盛大云,阿里云,还有世纪互联。但是他们的系统特别大,提供的IDC机房在全国各地,设备也是很昂贵的,而我们的系统在投资成本上就比较小,只在北京有一个IDC机房,只提供20台宿主机来扩展100个虚拟机,所以在投资方面是非常可行的. 2、软件系统的经济可行性分析 软件的经济可行性是指软件所能带来的经济效益与开发设计所需要的投资相比,是否相适宜,同时还要看此软件能否真正给用户带来足够的经济效益,我们开发的这套系统不需要大量经费,也不需要过多的人力进行管理,所以本系统的开发在经济上是完全可行的。 3、软件系统的技术可行性分析 根据该系统目标来衡量所需的技术是否具备,一般可从硬软件的性能要求、环境条件、操作人员水平和数量等方面去考虑和分析。 在软件方面,由于开源的Eclipse和MySql 是两个非常成熟的开发工具,无论在安全性、可用性、可靠性方面都毫无置疑,因此软件方面是可行的。 在硬件方面,则选择空间较大,硬件的配置越高,系统的开发与运行会更流畅。考虑到如今的家用或商用电脑硬件的整体配置水平,系统在硬件方面是可行的。 4、软件系统的组织可行性分析 制定合理的项目实施进度计划、设计合理的组织机构、选择经验丰富的管理人员、建立良好的协作关系、制定合适的培训计划等,保证项目顺利执行。 不难可以看出。在当今社会中,从事软件开发或是有点软件知识的人。对该软件的操作,只要进行简单的培训或是讲解就可以达到很好的管理。现在软件测试以及开发的流程以及一些规章制度也是很完善,有这些东西的保障。所以从管理可行性分析上看待,是可行的。 5、软件系统的运行可行性分析 在现今社会,顺着Internet在中国的迅速发展,人们日常生活中越来越多地使用Web技术来为自己的工作和学习服务。系统操作简单易行,所以使用前的培训也比较容易,此系统的管理人员对开发此应用项目的态度确定而且管理方面的条件都比较成熟。经过以上分析,运行方面是可行的。 6、软件系统的法律可行性分析 该系统的功能没有涉及到违反法律的行为。而系统的设计和开发也并没有任何侵权行为。故法律上是可行的。 综上所述,此系统开发目标已明确,在技术和经济等方面都可行,并且投入少、见效快。因此系统的开发是完全可行的。 2.3 软件系统的需求分析 系统的需求分析工作在软件设计过程中是非常重要的环节,它的基本任务是准确地回答“系统必须做什么?”。需求分析是对目标系统提出完整、准确、清晰、具体的要求。 2.3.1 需求分析概述 需求分析是软件生存周期中最重要的一步。只有通过需求分析,才能把软件功能和性能的总体概念描述为具体的软件需求规格说明,进而奠定软件开发的基础。软件需求分析工作也是一个不断认识和逐步细化的过程。该过程将软件调研阶段的需求资料进行分析和设计,使软件范围逐步细化到详细定义的程序,并分析出各种不同的软件元素,然后为这些元素找到可行的解决方法。 需求分析的过程可以分为四个方面:问题识别、分析与综合、制订规格说明、评审。 问题识别就是从系统角度来理解软件,确定对所开发系统的综合要求,并提出这些需求的实现条件,以及需求应该达到的标准。这些需求包括:功能需求(做什么),性能需求,环境需求(如机型,操作系统等),可靠性需求(不发生故障的概率),安全保密需求,用户界面需求,资源使用需求(软件运行是所需的内存,CPU等),软件成本消耗与开发进度需求,预先估计以后系统可能达到的目标。 分析与综合逐步细化所有的软件功能,找出系统各元素间的联系,接口特性和设计上的限制,分析他们是否满足需求,剔除不合理部分,增加需要部分。最后,综合成系统的解决方案,给出要开发的系统的详细逻辑模型(做什么的模型)。 制订规格说明书即编制文档,描述需求的文档称为软件需求规格说明书。请注意,需求分析阶段的成果是需求规格说明书,向下一阶段提交。 评审对功能的正确性,完整性和清晰性,以及其它需求给予评价。评审通过才可进行下一阶段的工作,否则重新进行需求分析。 需求分析过程是整个系统开发的重要阶段,分析的成功与否,决定着整个系统功能的完善性以及稳定性。在该阶段需求分析人员需要确定整个产品的功能要求,并且将现实事务抽象成对象并建模。 2.3.2 本系统的需求分析 需求分析是一组活动的总称,作为系统分析员,必须协同需要客户共同完成。而需求分析的任务是定义待开发的软件的功能、性能等指标。系统任务的实现在对系统正确的需求分析基础之上的。管理系统开发的起点是需求分析,这是整个系统开发过程中最重要的一步,它决定着开发的成败。 本系统的需求要求能够注册会员,待会员身份核实后,能够发放邀请码,收到发放邀请码的邮件,用邀请码来申请云主机,可对云主机进行SSH对其进行相应操作。 2.4 本章小结 可行性分析的任务是明确应用项目开发的必要性和可行性。本章主要对系统开发的可行性进行具体的分析和需求分析,从用户角度考虑本系统是否可行,主要通过有力的数据和软件运行环境方面作为依据。通过投资可行性,经济可行性、技术可行性、组织可行西,运行可行性,法律可行性等方面的分析说明本工程的技术成熟、完备,测试手段可靠,对它的需求分析总结出具有良好的市场拓展,它追求的是简单、易学、易懂、易用,因此,本系统具有一定的开发前景,具有开发的价值。 第3章 系统总体设计 3.1 系统总体方案设计 云主机体验系统的实现技术有很多种,如果采用传统的客户端/服务器型架构,即发布内容放在远程的服务器上,在客户机上安装客户端和数据库客户机配置,规定发放的邀请码的有效期为7天,如果超过7天则邀请码无效,所申请的云主机也不可再次访问,如果安装客户端的话,一旦主机过期不能再用,则需要及时的更新客户端,重新申请邀请码,而且维护比较麻烦,工作量大。Web技术超越了传统的“客户机/服务器”两层结构,采用了三层体系结构:用户界面层/事务层/数据库层,因此Web结构有着更好的安全性,在用户机上不需要安装任何应用程序,应用程序可以安装在事务层所在的计算机上,申请的云主机在远程的服务器上,因此本该设计最终决定采用Web技术实现。 由于该系统需要使用方便,到处都可以使用到,所以该系统采用B/S模式。这样可以免去了C/S模式中每个使用者机上都需要安装客户端,有更新系统每台客户机都需要分别更新等麻烦。只要把系统配置在一台服务器上,你用电脑上网登录系统即可使用,是非常方便的。 系统的表示层使用JSP网页。首先,JSP开发起来相对简单便捷,这正是敏捷开发中主张的“最简单解决方案就是最有效的解决方案”的简单原则。 既然选择了表示层使用JSP,那么后台代码就自然是用Java。Java语言的风靡自然是有其过人之处。选择Java可以使我们借此机会更多的去了解和学习这个开发语言,是非常难得的一个学习新知识的机会。 最后是数据库的选择。本系统作为中小型项目,没有对数据库必须采用Oracle这种大型数据库的要求。决定是用MySql数据库,这样Java在后头代码中调用就更为方便。 所以最后决定的技术方案是:使用B/S模式,表示层使用JSP网页,后台使用Java语言开发,数据库使用MySql。 3.2 系统项目功能分析 系统的主要应具有的基本功能应如图3.1所示的几点:会员管理,邀请码管理,云主机管理,后台管理。 图3.1 系统四大模块 3.3 系统业务流程分析 业务流程的分析能很好的使开发和测试人员熟悉本课题的业务流程,提高工作的效率。如图3.2所示。 图3.2 业务流程图 3.4 课题实现的技术基础与设计思想 本课题主要选择Java、JSP、JavaScript、JavaMail、W3C、Html作为应用程序开发工具,运用Tomcat服务器技术,整个系统完全基于B/S (Browser/Server)模式采用MVC设计模式进行设计,而框架则是采用spring MVC的框架。 1、Java语言 Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由Sun Microsystems公司于1995年5月推出的Java程序设计语言和Java平台(即 JavaSE, JavaEE, JavaME)的总称。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的 开发者专业社群。在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。 2、JSP简介 JSP(Java Server Pages)是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。JSP技术有点类似ASP技术,它是在传统的网页HTML文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件(*.jsp)。 用JSP开发的Web应用是跨平台的,既能在Linux下运行,也能在其他操作系统上运行。JSP技术使用Java更具备了显著优势和广阔前景。言网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。 JSP具有以下的优点: (1)将业务层与表示层分离:使用JSP技术,网络开发人员可充分使用HTML来设计页面显示部分(如字体颜色等),并使用JSP指令或者JAVA程序片段来生成网页上的动态内容。 (2)能够跨平台:JSP支持绝大部分平台,包括现在非常流行的LINUX系统,应用非常广泛的Apache服务器也提供了支持JSP的服务。 (3)组件的开发和使用很方便:如ASP的组件是由C++,VB等语言开发的,并需要注册才能使用;而JSP的组件是用Java开发的,可以直接使用。 (4)一次编写,处处运行:作为JAVA开发平台的一部分,JSP具有JAVA的所有优点,包括Write once , Run everywhere。 3、B/S结构开发思想 B/S(Browser/Server)结构即浏览器和服务器结构。它是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户工作界面是通过WWW浏览器来实现,极少部分事务逻辑在前端(Browser)实现,但是主要事务逻辑在服务器端(Server)实现,形成所谓三层(3-tier)结构。 一个三层架构的应用程序由三部分组成,这三部分各自分布在网络中的不同地方。这三个部分分别是:工作站或表示层接口、事务逻辑、数据库以及与其相关的程序设计。在一个典型的三层架构应用程序中,应用程序的用户工作站包括提供图形用户界面(GUI)的程序设计和具体的应用程序入口表格或交互式窗口。事务逻辑处在局域网(LAN)服务器或其他共享主机上,它作为响应工作站所发出客户请求的服务器,而相对于处于大型机的第三层它是作为客户端,并且决定需要什么数据以及数据存储在哪里。第三层包括数据库以及处理读写以及访问数据库的程序。然而应用程序的设计可能比这个架构要复杂,对于大型程序来说,这个三层模式是一种比较简便的考虑方法。这种应用程序的设计使用客户/服务器模式,各层可以同时开发,并且可以由不同的成员组用不同的语言来开发。因为各个层次的开发不会影响其他层次,所以这种模型对于进一步开发软件是很方便的。这样就大大简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本(TCO。以目前的技术看,局域网建立B/S结构的网络应用,并通过Internet/Intranet模式下数据库应用,相对易于把握、成本也是较低的。它是一次性到位的开发,能实现不同的人员,从不同的地点,以不同的接入方式(比如LAN, WAN, Internet/Intranet等)访问和操作共同的数据库;它能有效地保护数据平台和管理访问权限,服务器数据库也很安全。特别是在Java这样的跨平台语言出现之后,B/S架构管理软件更是方便、快捷、高效。 4、MVC设计模式 MVC(Model-View-Controller)应用程序结构被用来分析分布式应用程序的特征。这种抽象结构能有助于将应用程序分割成若干逻辑部件,使程序设计变得更加容易。 MVC结构提供了一种按功能对各种对象进行分割的方法(这些对象是用来维护和表现数据的),其目的是为了将各对象间的耦合程度减至最小。MVC结构本来是为了将传统的输入(input)、处理(processing)、输出(output)任务运用到图形化用户交互模型中而设计的。但是,将这些概念运用于基于Web的企业级多层应用领域也是很适合的。 在MVC结构中,模型(Model)代表应用程序的数据(data)和用于控制访问和修改这些数据的业务规则(business rule)。通常模型被用来作为对现实世界中一个处理过程的软件近似,当定义一个模型时,可以采用一般的简单的建模技术。 当模型发生改变时,它会通知视(View),并且为视提供查询模型相关状态的能力。同时,它也为控制器(Controller)提供访问封装在模型内部的应用程序功能的能力。 一个视(View)用来组织模型的内容。它从模型那里获得数据并指定这些数据如何表现。当模型变化时,视负责维持数据表现的一致性。视同时将用户要求告知控制器(Controller)。 控制器(Controller)定义了应用程序的行为;它负责对来自视的用户要求进行解释,并把这些要求映射成相应的行为,这些行为由模型负责实现。在独立运行的GUI客户端,用户要求可能是一些鼠标单击或是菜单选择操作。在一个Web应用程序中,它们的表现形式可能是一些来自客户端的GET或POST的HTTP请求。模型所实现的行为包括处理业务和修改模型的状态。根据用户要求和模型行为的结果,控制器选择一个视作为对用户请求的应答。通常一组相关功能集对应一个控制器。由于采用B/S设计模式分层思想,同时根据软件工程的管理思想及系统分析的设计与分析的思想进行系统的开发,利用Java语言开发Web应用程序,提供MCV设计模式对系统的程序代码结构进行分层。 Spring 框架提供了构建 Web 应用程序的全功能 MVC 模块。使用 Spring 可插入的 MVC 架构,可以选择是使用内置的 Spring Web 框架还是 Struts 这样的 Web 框架。通过策略接口,Spring 框架是高度可配置的,而且包含多种视图技术,例如 JavaServer Pages(JSP)技术、Velocity、Tiles、iText 和 POI。Spring MVC 框架并不知道使用的视图,所以不会强迫您只使用 JSP 技术。Spring MVC 分离了控制器、模型对象、分派器以及处理程序对象的角色,这种分离让它们更容易进行定制。 Lifecycle for overriding binding, validation, etc.;易于同其它View框架(Titles等)无缝集成,采用IOC便于测试。 它是一个典型的教科书式的mvc构架,而不像struts等都是变种或者不是完全基于mvc系统的框架,对于初学者或者想了解mvc的人来说我觉得 spring是最好的,它的实现就是教科书!第二它和tapestry一样是一个纯正的servlet系统,这也是它和tapestry相比 struts所没有的优势。而且框架本身有代码,而且看起来也不费劲比较简单可以理解。Spring MVC的流程图,如图3.3所示。 图3.3 spring mvc业务流程图 5、面向对象机制的设计思想 所有计算机均由两种元素组成:代码和数据。精确的说,有些程序是围绕着"什么正在发生"而编写,有些则是围绕"谁正在受影响"而编写的。第一种编程方式叫做"面向过程的模型",按这种模型编写的程序以一系列的线性步骤(代码)为特征,可被理解为作用于数据的代码。如C等过程化语言。第二种编程方式叫做"面向对象的模型",按这种模型编写的程序围绕着程序的数据(对象)和针对该对象而严格定义的接口来组织程序,它的特点是数据控制代码的访问.通过把控制权转移到数据上,面对象的模型在组织方式上有:抽象、封装、继承和多态的好处。 6、Tomcat应用服务器 目前支持JSP的应用服务器是较多的,Tomcat是其中较为流行的一个Web服务器,被JavaWorld杂志的编辑选为2001年度最具创新的Java产品,可见其在业界的地位。 Tomcat是一个免费的开源的Servlet容器,在Tomcat中,应用程序的部署很简单,你只需将你的WAR放到Tomcat的webapp目录下,Tomcat会自动检测到这个文件,并将其解压。你在浏览器中访问这个应用的Jsp时,通常第一次会很慢,因为Tomcat要将Jsp转化为Servlet文件,然后编译。编译以后,访问将会很快。Tomcat也具有传统的Web服务器的功能:处理Html页面。但是与Apache相比,它的处理静态Html的能力就不如Apache。我们可以将Tomcat和Apache集成到一块,让Apache处理静态Html,而Tomcat处理Jsp和Servlet。Tomcat是一个很好的工具,不仅仅因为其免费,功能强大,更因为其开放性,越来越受到人们的重视。 7、MySql的概述 MySql是一个小型关系型数据库管理系统,开发者为瑞典Mysql AB公司。目前MySql被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySql作为系统数据库。具有以下特性: (1)使用C和C++编写,并使用了多种编译器进行测试,保证源代码的可移植性。 (2)支持AIX、FreeBSD、HP-UX、Linux、Mac OS、Novell Netware、Solaris、OpenBSD、OS/2 Wrap、Windows等多种操作系统。 (3)为多种编程语言提供了API。这些编程语言包括C、C++、Eiffel、Java、Perl、PHP、Python、Ruby和Tcl等。 (4)支持多线程,充分利用CPU资源。 (5)优化的SQL查询算法,有效地提高查询速度。 (6)既能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够作为一个库而嵌入到其他的软件中提供多语言支持,常见的编码如中文的GB 2312、BIG5,日文的Shift_JIS等都可以用作数据表名和数据列名。 (7)提供TCP/IP、ODBC和JDBC等多种数据库连接途径。 (8)提供用于管理、检查、优化数据库操作的管理工具。 (9)可以处理拥有上千万条记录的大型数据库 。 8、W3C DOM模型获取网页源码 DOM是Document Object Model文档对象模型的缩写。根据W3C DOM规范(http://www.w3.org/DOM/),DOM是一种与浏览器,平台,语言的接口,使得你可以访问页面其他的标准组件。简单理解,DOM解决了Netscaped的JavaScript和Microsoft的Jscript之间的冲突,给予web设计师和开发者一个标准的方法,让他们来访问他们站点中的数据、脚本和表现层对像。 为HTML、XML等数据载体和信息载体在内存中的处理提供了一种基本的对象模型,可提供连接到文件的结构、格式、事件等。由于不依赖于任何程序设计语言和网页描述语言,它为有效处理HTML和XML数据提供了一种标准的、独立的接口。文档对象模型 (DOM) 是一个平台,一个中立于语言的应用程序编程接口 (API),允许程序访问并更改文档的内容、结构和样式。 9、利用JavaMail来收发邮件 JavaMail,顾名思义,提供给开发者处理电子邮件相关的编程接口。它是Sun发布的用来处理email的API。它可以方便地执行一些常用的邮件传输。我们可以基于JavaMail开发出类似于Microsoft Outlook的应用程序。虽然JavaMail是Sun的API之一,但它目前还没有被加在标准的java开发工具包中(Java Development Kit),这就意味着你在使用前必须另外下载JavaMail文件。除此以外,你还需要有Sun的JavaBeans Activation Framework (JAF)。JavaBeans Activation Framework的运行很复杂,在这里简单的说就是JavaMail的运行必须得依赖于它的支持。在Windows 2000下使用需要指定这些文件的路径,在其它的操作系统上也类似。 10、UML 统一建模语言 (UML)是非专利的第三代建模和规约语言。 UML是在开发阶段,说明,可视化,构建和书写一个面向对象软件密集系统的制品的开放方法。UML展现了一系列最佳工程实践,这些最佳实践在对大规模,复杂系统进行建模方面,特别是在软件架构层次已经被验证有效。 11、Eclipse开源工具 Eclipse 是一个开放源代码的、基于 Java 的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括 Java 开发工具(Java Development Kit,JDK)。 虽然大多数用户很乐于将 Eclipse 当作 Java 集成开发环境(IDE)来使用,但 Eclipse 的目标却不仅限于此。Eclipse 还包括插件开发环境(Plug-in Development Environment,PDE),这个组件主要针对希望扩展 Eclipse 的软件开发人员,因为它允许他们构建与 Eclipse 环境无缝集成的工具。由于 Eclipse 中的每样东西都是插件,对于给 Eclipse 提供插件,以及给用户提供一致和统一的集成开发环境而言,所有工具开发人员都具有同等的发挥场所。 这种平等和一致性并不仅限于 Java 开发工具。尽管 Eclipse 是使用 Java 语言开发的,但它的用途并不限于 Java 语言;例如,支持诸如 C/C++ 和 COBOL 等编程语言的插件已经可用,或预计将会推出。Eclipse 框架还可用来作为与软件开发无关的其他应用程序类型的基础,比如内容管理系统。 基于 Eclipse 的应用程序的一个突出例子是 IBM® Rational® Software Architect,它构成了 IBM Java 开发工具系列的基础。 3.5 系统各模块功能设计 该系统有四个主功能模块,在其主模块中还划分出各个子功能,如图3.4所示。 图3.
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 通信科技 > 云计算

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服