毕业设计论文跨平台多人在线游戏平台设计.doc

上传人:sccc 文档编号:4881863 上传时间:2023-05-21 格式:DOC 页数:60 大小:909.02KB
返回 下载 相关 举报
毕业设计论文跨平台多人在线游戏平台设计.doc_第1页
第1页 / 共60页
毕业设计论文跨平台多人在线游戏平台设计.doc_第2页
第2页 / 共60页
毕业设计论文跨平台多人在线游戏平台设计.doc_第3页
第3页 / 共60页
毕业设计论文跨平台多人在线游戏平台设计.doc_第4页
第4页 / 共60页
毕业设计论文跨平台多人在线游戏平台设计.doc_第5页
第5页 / 共60页
点击查看更多>>
资源描述

《毕业设计论文跨平台多人在线游戏平台设计.doc》由会员分享,可在线阅读,更多相关《毕业设计论文跨平台多人在线游戏平台设计.doc(60页珍藏版)》请在三一办公上搜索。

1、跨平台多人在线游戏平台设计摘要:英特网于90年代成为发展最快的传播媒介,是当今世界上最大的信息网络。在传统桌面平台因特网用户数量稳步上升的同时,使用手持设备登录英特网的用户正在以10年内5倍增长的速度快速上升。英特网终将成为连接传统桌面平台与新兴手持设备平台的纽带。本课题以英特网为桥梁、以基于Java的跨平台技术为基础、以跨平台多人在线游戏系统为形式,构造一个通用的三层结构的跨平台多人网络游戏平台结构,并且对其在其它领域(比如,跨平台数据查询系统,跨平台电子商务)的应用做出一定的探索。本文阐述了跨平台多人在线游戏平台开发中所涉及的关键技术,解决了跨平台网络通信及对于资源受限的手持设备中所存在的

2、开发难点,确立了跨平台系统中网络通信的解决方案。随着国内无线网络建设的步伐加速、设备制造商对设备性能的提升跨平台多人在线游戏平台将因其平台选择的自由性拥有大量的用户,本课题所提出的跨平台无线网络通信的结构也将会有着广阔应用。关键词:英特网;在线游戏;跨平台;Java;手持设备Design of Cross-platform Multi-player Online Game PlatformAbstract: In 1990s, Internet has become the very medium that is developing most rapidly. Nowadays Intern

3、et is the biggest information network in the world. The number of the Internet users with traditional desktops is ascending. In the meantime, the number of users with handsets has achieved quintuple increase. The Internet will become the link which connects traditional desktops and new emerging hand

4、sets. This project tries to construct a general three-layer cross-platform network game platform structure which uses the Internet as a bridge, the cross-platform technique based on Java as foundation and the cross-platform online game system as a form, and tries to make survey into the application

5、of it in other realms(for example, cross-platform data search system, cross-platform electronic commerce).The article expatiated upon the key technique involved in the development of a cross-platform online game platform. It has proposed some solution to the difficulties caused by the cross-platform

6、 network communication and the limitation of resource of the handsets, established the solution to network correspondence in the cross-platform system. As the development of the domestic wireless network accelerates and the equipment manufacturers promote the capability of these equipments, the cros

7、s-platform online game platform will have a large number of users because of its flexibility of platform selection, so the cross-platform wireless network correspondence structure proposed by this author will apply widely.Keywords:Internet; Online-game; Cross-platform; Java; Handset目录1绪论11.1国内外研究现状1

8、1.2研究背景和意义22技术背景42.1跨平台技术背景42.1.1.Net简介42.1.2Java简介52.2无线通信技术背景62.2.1GPRS与传统网络连接的性能比较62.2.2GPRS与新兴无线网络连接的性能比较72.3Java ME技术背景72.3.1Java ME与Java SE的关系72.3.2Java ME的结构82.4Servlet技术简要介绍92.5JavaBean技术简要介绍102.6Applet技术简要介绍102.7MySQL简要介绍103本课题基本内容123.1系统基本构架123.1.1客户表现层133.1.2服务逻辑处理层143.1.3后台数据层143.1.4网络连接

9、层和数据连接层143.2系统所实现的游戏153.2.1系统操作流程153.2.2游戏流程163.2.3游戏通信方式183.3手持移动设备端开发183.3.1高级界面编写183.3.2低级界面编写193.4游戏的实现193.4.1游戏逻辑193.4.2游戏界面203.4.3界面与逻辑分离204关键技术研究及实现254.1Java ME中关键编程技术254.1.1MIDlet生命周期254.1.2游戏绘图264.1.3多线程编程284.1.4手持移动设备客户端程序优化294.2手持移动设备与游戏服务器通信的技术与实现334.2.1手持移动设备网络连接的限制334.2.2手持移动设备与服务器的通信方

10、式334.3服务器端关键技术404.3.1Servlet414.3.2JavaBean474.4跨平台客户端实现484.4.1快速构造基于Applet客户端484.4.2快速实现Application客户端494.5本系统在其它领域的可扩展性504.5.1对游戏进行扩充504.5.2对平台进行扩充504.5.3对功能进行扩充514.5.4同时进行多种扩展514.6平台系统发布524.6.1服务器架设524.6.2软件发布525结论与进一步研究方向535.1本课题工作总结535.2本课题进一步研究方向54致谢55参考文献56附录57iv跨平台多人在线游戏平台设计561 绪论网络游戏是依托软件、计

11、算机及互联网技术发展起来的数字娱乐及新兴休闲方式。网游产业作为一个新兴的高技术产业,已经成为同影视、音乐等并驾齐驱的全球最重要的娱乐产业之一,已经显露出巨大的商业价值,成为新的经济增长点。2003年全球网络游戏产业规模达到70多亿美元,占整个游戏市场规模的 24.7%1。与网络游戏蓬勃发展相对应的是手机用户的飞速增长。截止2007年4月,国内移动电话普及率已经达到了35.3 部/百人2。与英特网和手机用户快速增长的情况形成鲜明对比的是,同时运作于传统桌面平台和新兴手持移动设备平台的网络游戏踪迹难觅。本课题所研究的跨平台多人在线游戏平台便是针对这一市场领域和技术领域,形成一种新的网络游戏运作方式

12、与开发方式。1.1 国内外研究现状我国网络游戏产业2000年开始起步,2001年我国网游用户不足400万,2002年就超过800万;2003年达到1380万;2004年完成2025万,同比增长了47%,占互联网用户量21.5%;2000年我国网络游戏市场规模仅为0.38亿元,2003年达到24.3亿元,2004 年我国网游产业规模达到35亿元,同比增长了43.9%。预计到2007年我国互联网用户将达1.4亿,网游用户达4200万,网游产业市场将达到100 亿元,市场前景很好。目前网络游戏产业已成为网络经济及文化娱乐业的重要支撑,同时正带动着相关产业的发展,如:对批发和零售渠道、信息产业及通信运

13、营业的发展、新型信息服务业、国家税收的提高等都有较大的促进作用,我国仅2004年网游就对通信运营业业务收入直接贡献150.7亿人民币,对信息产业直接贡献 63.7亿人民币,对媒体及传统出版业贡献35.8亿人民币1。而在手机游戏方面,近年来手机的性能大大增强并普及使用,手机已成为个人化的移动计算终端,这为手机游戏市场的发展提供了有利条件。据IDC预计,2006年全球手机游戏市场的总值将达170亿美元。目前,市面上的手机游戏绝大部分由游戏开发商提供,普通大众由于缺乏专业的程序开发技能而难以参与手机游戏的开发,只能被动地接受开发商、运营商提供的应用,基于手机的移动游戏市场也因缺乏广泛参与而难以获得更

14、快的发展3。 同时在世界范围内,根据ITU的研究表明3Internet用户和手机用户同时在快速增长,特别是手机用户的增长速度甚至超越了Internet用户的增长速度。从1992年到2001年间,Internet用户和手机用户逐年增长,从未有过下滑的趋势。在1996年的时候,Internet用户不足50,000,000, 手机用户不足100,000,000;到2001年,全球已有Internet用户500, 000,000, 手机用户950,000,000。近年来Internet用户和手机用户的用户增长更是迅速,光2000年到2001年间,Internet用户就增长了100,000,000,手机

15、用户更是增长了200,000,000。在游戏的平台方面,根据IGDA的调查研究4可知占有市场最大份额的是基于网络的PC平台游戏达到了50,000,000以上的用户。在无线通信的游戏方面市场占有率仍然不大,但是增长迅速,在未来五年内将10倍增长。与以上情况形成对比的是:目前市场上暂时尚未发现商业运营的跨平台多人在线游戏。造成这一情况的原因归结为以下几点:1. 移动运营商与网络游戏制造商各自为营,没有达成统一的利益目标。2. 国内移动网络滞后。传统的GPRS提供的带宽十分有限,制约了网络游戏的开发和运行。3. 市场上手机型号繁杂。移动设备游戏和应用的开发过程如不采用跨平台技术,开发成本将大大增加。

16、4. 我国目前的网络游戏市场60% 以上被韩国、日本、美国等国家的产品所占据,中国的网络游戏企业大多数为运营商,缺乏自身的核心技术5。1.2 研究背景和意义近年来,移动通信中的无线网络连接与传统有线网络连接的性能差距正在减小。日、美等发达国家已经成功运营了3G网络6。3G的主要特征是可提供移动宽带多媒体业务,其中高速移动环境下支持144kbit/s 速率,步行和慢速移动环境下支持384kbit/s速率,室内环境支持2Mbit/s速率的数据传输。中国国内在香港等发达地区也已有商业化的3G网络。中国国内其它地区也在加紧面向3G的过渡工作,以更好地召开2008年北京奥运会和2010年上海世博会。网络

17、速度这一手持移动设备网络通信瓶颈的解决将带动移动通信设备功能向多元化、网络化发展,其中必然包括网络游戏。网速的提升必然使手持移动通信设备用户渴望得到与桌面平台一样或者接近于桌面平台的游戏感官。在无线网络通信技术得到发展的同时,手持设备运行环境也在更新换代。MIDP 1.0已经普遍被MIDP 2.0取代。近日,当MIDP 3.0 规范正在制定时MIDP 2.1已经出台。MIDP 2.1规范最终定稿于2006年5月26日。新的MIDP 2.1中对MIDP 2.0作出了若干改进,强制要求硬件商加入了一些功能。Sun公司于2007年2月最新推出的Wireless Tool Kits 2.5(以下简称W

18、TK 2.5)已经支持了最新的MIDP 2.1规范。MIDP 2.1可以被看成是MIDP 3.0出台之前的小试牛刀,也预示着新的MIDP规范下的应用将有一定程度的飞跃。本课题希望能够抓住时代的步伐,在国内无线网络和手持通信设备都将更新换代的时期率先进行跨平台多人在线游戏系统的尝试。本课题旨在架起传统网络游戏和最新的手机游戏的桥梁。以跨平台的形式,将不同平台的游戏玩家联系起来,增大游戏的覆盖面,提高游戏的影响力。通过网络途径使不同地域的游戏玩家互动,在单一的游戏内容中加入沟通的乐趣,加深玩家在游戏中的认同感。在游戏成型后,从中提取出一种新的游戏构架,推广开来,使游戏有新的不同的创作方式和娱乐方式

19、。并且提倡一种绿色游戏的概念,游戏的开发采用开源工具,游戏免费发布,游戏的内容健康积极向上,以休闲益智类型为主。并对成形的三层结构的跨平台多人网络游戏结构进行概括总结,提取出适用其它领域的统一框架。本课题中的游戏的实现基于本平台所实现的三层系统结构。通过对相应功能模块的扩展,本课题的应用将不只局限于游戏应用,更能作为一个多平台的数据库信息系统,实现信息查询、电子商务等功能。希望本课题能对今后的网络游戏开发,特别是跨平台网络游戏的开发起到抛砖引玉的作用。2 技术背景本课题是一个综合性质的软件项目,涵盖内容十分广泛。其中包括了跨平台技术、无线通信技术、Java ME技术、Servlet技术、Jav

20、aBean技术、Applet技术以及MySQL技术。以下小节将对这些技术做一简单介绍与总结。2.1 跨平台技术背景当前主流的跨平台环境为微软的.Net和Sun公司的Java。2.1.1 .Net简介Microsoft .Net7既是软件编写方法,又是一套开发实现这些方法的软件的工具。为.Net 编译的应用程序不是被直接编译成本机代码,而是被编译成一种称为 Microsoft 中间语言 (MSIL) 的中间语言。当首次运行一个应用程序时,公共语言运行库实时编译器在程序执行前将 MSIL 代码编译成本机代码。公共语言运行库不是一个简单的JIT编译器,它还负责提供内存回收、异常处理、安全服务、运行时

21、类型安全检查等底层执行服务。由于公共语言运行库在管理执行方面的作用,因此有时将以.Net Framework 为目标的程序称为“托管”应用程序。.Net Framework是一组类,它们用于构建在公共语言运行库上运行的应用程序。这些类库为包括数据访问、安全性、文件IO、XML操作、消息传送、类反射、XML Web Service、ASP.Net 和 Microsoft Windows 服务在内的各种任务提供强大的支持。为了帮助创建兼容 .Net Framework 的语言,Microsoft 设计了公共语言规范 (CLS)。每种语言要使用 .Net Framework 和公共语言运行库,以及与

22、用其他语言编写的组件进行互操作,就必须提供 CLS 所描述的功能。如果一种语言实现了必需的功能,那么它就被称为兼容 .Net。每种兼容 .Net 的语言都支持相同的数据类型,使用相同的 .Net Framework 类,编译为相同的 MSIL,并且使用相同的公共语言运行库管理执行过程。因此,各种兼容 .Net 的语言之间没有优劣之别。开发人员可以自由地为特定的组件选择最好的语言同时又不损失该平台的能力和自由度。另外,使用一种语言编写的组件也能够很容易地与用另外一种语言编写的组件进行互操作。例如,您可以用 C# 编写一个从用 Visual Basic 编写的基类继承而来的类。CLS 已经被提交给

23、 ECMA 进行标准化,以鼓励更多语言开发人员为更多语言创建兼容 .Net 的版本。在撰写本文时有 20 多种兼容 .Net 的语言正在开发中。图 2.1 .Net Framework结构体系图由图2.1可以看到,.Net的目标是“多种语言共享一种平台。即多种语言可以运行在统一的.Net Framework之上,以此达到跨平台的目标。不过遗憾的是,微软官方至今还没有推出适合Windows以外操作系统的.Net Framework。2.1.2 Java简介Java既是一种编程语言,又是一个平台。Java既可以被编译,也可以被解释。通过编译器,可以把Java程序翻译成一种中间代码称为字节码可以被J

24、ava解释器解释的独立于平台的代码。通过解释器,每条Java字节指令被分析,然后在计算机上运行。只需编译一次,程序运行时解释执行。可以把Java字节码看作运行在Java虚拟机(Java VM)上的机器代码指令。每种Java解释器,不管是Java开发工具还是可以运行Java小应用程序的Web浏览器,都是一种Java VM的实例。JavaVM也可以由硬件实现。Java字节码使“编写一次,到处运行”成为可能。可以在任何有Java编译器的平台上把Java程序编译成字节码。这个字节码可以运行在任何Java VM上。例如,同一个Java程序可以运行在WindowsNT、Solaris和Macintosh上

25、。平台是程序运行的硬件或软件环境。Java平台与大多数其它平台不同之处在于它是运行于其它基于硬件平台的纯软件平台。大多数其它平台是硬件和操作系统的结合。Java平台由两部分组成: 1. Java虚拟机(Java VM) 2. Java应用程序接口(Java API) 我们已经介绍了Java VM,它是Java平台的基础,可以移植到各种基于硬件的平台上。Java API是软件组件的集合,它们提供了很多有用的功能,如图形用户界面(GUI)。Java API被分组为相关组件的库(包)。图2.2描述了一个运行在Java平台上的Java程序,如应用程序(application)或小应用程序(Applet

26、)。如图2.2中显示的,JavaAPI和VM把Java程序从硬件依赖中分离了出来。图 2.2 Java平台体系结构作为一种独立于平台的环境,Java比本地代码慢一些。然而,智能的编译器、很好地调制过的解释器和即时字节码编译器可以在不牺牲可移植性的条件下使Java的表现接近本地代码。由此可见Java 的理想目标是“在多种平台上使用一种语言。即使用Java语言编写的程序能够在所有支持JVM的操作系统中运行。2.2 无线通信技术背景传统的GSM网络仅能支持9.6Kbit/s速率的数据传输业务,这远远不能满足用户对高速无线数据业务的需求。GPRS(General Packet Radio Servic

27、e,通用分组无线业务)是构架在传统GSM网络之上的一种标准化的分组交换数据业务,它可以提供高达115kbit/s速率的分组数据业务,从而使得包括图片、话音和视频的多媒体业务在无线网络中的传输成为现实。GPRS采用分组交换技术、在通信的过程中不需要建立和保持电路,符合数据通信突发性的特点,并且呼叫建立时间很短。GPRS不再根据用户实际的数据流量来计费,这样就允许用户始终在线,享受方便快捷的服务。因此,GPRS被认为是第二代移动通信系统向第三代移动通信演进的重要一步。2.2.1 GPRS与传统网络连接的性能比较尽管相对GSM网络,GPRS已经有了长足的进步,但是和有线网络相比还是存在一定的差距。表

28、2-1给出了理想状态下GPRS、Modem和Lan的通信性能。表2-2的各项性能参数是从大量的模拟测试中得出的结果。比较而言,在实际应用当中,Lan的性能通常接近于它的理想状态,而由于GPRS的性能受许多环境因素的影响,例如小区内的用户数,应用的类型以及可用的网络资源等,所以GPRS的性能很难达到理想的情况。表 2-1 理想状态下GPRS、Modern和LAN的通信性能GPRSModenLan带宽115kbit/s50kbit/s10Mbit/s延迟(ms)1001001表 2-2 模拟真实状态下GPRS、Modern和LAN的通信性能GPRSModenLan带宽50kbit/s30kbit/

29、s8Mbit/s延迟(ms)20015052.2.2 GPRS与新兴无线网络连接的性能比较值得欣慰的是,无线网络连接也在进步中。虽然GPRS与传统网络连接相比带宽有限、延迟严重,但是即将到来的3G网络技术将会改变这一现状。表 2-3 比较了GPRS与新兴无线网络连接的性能。表 2-3 GPRS与新兴无线网络连接的性能比较下行网速峰值平均下载速度GPRS115kbps30-40kbpsEDGE473kbps100-130kbpsUMTS-WCDMA2Mbps220-320kbpsUMTS-HSDPA14Mbps550-1100kbps尽管国内的3G 标准还在制定中,近期不会投入商用。但是,中国联

30、通和中国移动都已经相继开始了EDGE的测试。EDGE被认为是2.5G(GPRS)向3G过渡的技术,普遍称其为2.75G技术。上海移动在今年6月开始进行EDGE的公开测试,不久的将来将正式商用。2.3 Java ME Java从1.5版本开始改变了版本号的命名,将Java 1.5称为Java 5。同时将J2ME命名为Java ME,J2SE命名为Java SE,J2EE命名为Java EE。本文遵照Sun公司对于Java的新命名规则。技术背景Java ME是Sun公司针对嵌入式、消费类电子产品推出的开发平台,与Java SE和Java EE共同组成Java技术的三个重要的分支。Java ME实际

31、上是一系列规范的集合,由JCP组织指定相关的Java Specification Request(JSR)并发布,各个厂商会按照规范在自己的产品上进行实现,但是必须要通过TCK测试以确保兼容性。目前阶段,Java ME最流行的应用是游戏软件。因为与需要昂贵的专用设备和开发工具的竞争对手(如索尼和任天堂)相比,Java ME程序可以在PC机上开发和仿真运行,然后很容易地部署到目标机上,从而使其开发、测试和发布变得容易和廉价。2.3.1 Java ME与Java SE的关系Java ME可以看作是Java SE的一个子集8。它包含了Java SE中的一些核心关键内容,同时针对嵌入式设备进行了扩展。

32、它和Java SE的关系可以概括为图2.3中所示关系。 Java SEJavaME图 2.3 Java SE与Java ME关系图2.3.2 Java ME的结构与Java SE和Java EE相比,Java ME总体的运行环境和目标更加多样化,但其中每一种产品的用途却更为单一,而且资源限制也更加严格。为了在达到标准化和兼容性的同时尽量满足不同方面的需求,如图2.4,Java ME的架构分为Configuration、Profile和Optional Packages(可选包)。它们的组合取舍形成了具体的运行环境9。 图 2.4 Java ME结构Configuration主要是对设备纵向的分

33、类,分类依据包括存储和处理能力,其中定义了虚拟机特性和基本的类库。已经标准化的Configuration有Connected Limited Device Configuration(CLDC)和Connected Device Configuration(CDC)。 Profile建立在Configuration基础之上,一起构成了完整的运行环境10。它对设备横向分类,针对特定领域细分市场,内容主要包括特定用途的类库和API。CLDC上已经标准化的Profile有Mobile Information Device Profile ( MIDP)和Information Module Prof

34、ile(IMP),而CDC上标准化的Profile有Foundation Profile(FP)、Personal Basis Profile(PBP)和Personal Profile(PP)。 可选包独立于前面两者提供附加的、模块化的和更为多样化的功能。目前标准化的可选包包括数据库访问、多媒体、蓝牙等等11。 2.4 Servlet技术简要介绍Servlet是使用Java Servlet 应用程序设计接口(API)及相关类和方法的 Java 程序12。除了 Java Servlet API,Servlet 还可以使用用以扩展和添加到 API 的 Java 类软件包。Servlet 在启用

35、Java 的 Web 服务器上或应用服务器上运行并扩展了该服务器的能力。Java Servlet对于Web服务器就好像Java Applet对于Web浏览器。Servlet装入Web服务器并在Web服务器内执行,而Applet装入Web浏览器并在Web浏览器内执行。Servlet 通过创建一个框架来扩展服务器的能力,以提供在 Web 上进行请求和响应服务。当客户机发送请求至服务器时,服务器可以将请求信息发送给Servlet,并让Servlet 建立起服务器返回给客户机的响应。当启动Web服务器或客户机第一次请求服务时,可以自动装入 Servlet。装入后,Servlet 继续运行直到其它客户机

36、发出请求。Servlet 的功能涉及范围很广。例如,Servlet 可完成如下功能: 1. 创建并返回一个包含基于客户请求性质的动态内容的完整的 HTML页面。 2. 创建可嵌入到现有 HTML 页面中的一部分 HTML 页面(HTML 片段)。 3. 与其它服务器资源(包括数据库和基于 Java 的应用程序)进行通信。 4. 用多个客户机处理连接,接收多个客户机的输入,并将结果广播到多个客户机上。例如,Servlet 可以是多参与者的游戏服务器。 5. 当允许在单连接方式下传送数据的情况下,在浏览器上打开服务器至Applet的新连接,并将该连接保持在打开状态。当允许客户机和服务器简单、高效地

37、执行会话的情况下,Applet也可以启动客户浏览器和服务器之间的连接。可以通过定制协议或标准(如 IIOP)进行通信。 6. 对特殊的处理采用 MIME 类型过滤数据。 7. 将定制的处理提供给所有服务器的标准例行程序。例如,Servlet 可以修改如何认证用户。2.5 JavaBean技术简要介绍JavaBean 是一种Java语言写成的可重用组件。为写成JavaBean,类必须是具体的和公共的,并且具有无参数的构造器。JavaBeans 通过提供符合一致性设计模式的公共方法将内部域暴露称为属性。众所周知,属性名称符合这种模式,其他Java 类可以通过自省机制发现和操作这些JavaBean

38、属性。用户可以使用JavaBean将功能、处理、值、数据库访问和其他任何可以用Java代码创造的对象进行打包,并且其他的开发者可以通过内部的JSP页面、Servlet、其他JavaBean、Applet程序或者应用来使用这些对象。用户可以认为JavaBean提供了一种随时随地的复制和粘贴的功能,而不用关心任何改变。2.6 Applet技术简要介绍Applet可以翻译为小应用程序,Java Applet就是用Java语言编写的这样的一些小应用程序,它们可以直接嵌入到网页或者其他特定的容器中,并能够产生特殊的效果。Applet必须运行于某个特定的“容器”,这个容器可以是浏览器本身,也可以是通过各种

39、插件,或者包括支持Applet的手持移动设备在内的其他各种程序来运行。与一般的Java应用程序不同,Applet不是通过main方法来运行的。在运行时Applet通常会与用户进行互动,显示动态的画面,并且还会遵循严格的安全检查,阻止潜在的不安全因素(例如根据安全策略,限制Applet对客户端文件系统的访问)。在Java Applet中,可以实现图形绘制,字体和颜色控制,动画和声音的插入,人机交互及网络交流等功能。Applet还提供了名为抽象窗口工具箱(Abstract Window Toolkit,AWT)的窗口环境开发工具。 AWT利用用户计算机的GUI元素,可以建立标准的图形用户界面,如窗

40、口、按钮、滚动条等等。2.7 MySQL简要介绍MySQL,出自瑞典小公司MySQL公司的开放源码的数据库软件,目前对数据库老牌厂商Oracle, IBM, Microsoft 以及 Sybase等公司产生威胁。 2004年7月,MySQL公司在成立8年后首次召开全球用户大会。该公司的合作创办者之一大卫米科斯(David Axmark)称,目前MySQL软件的官方日下载数量已经达到29000份,而其全球总用户数量已经达到了惊人的400万。目前MySQL实行的是双重的用户许可证制度。对于那些下载免费版本的用户,必需将自己所进行的任何代码修改公布于众;或者通过付费的方式来使得这些更改成为私有产权。

41、公司的利润来源也很清晰:产品技术服务,认证课程以及付费用户。 MySQL产品尚有一些不稳定等因素,但是,因为其开放性,被人形容是总值高达120亿美元的数据库市场上的“通配符”,它几乎可以运用在任何需要数据库的地方。 MySQL公司目前在同时开发两个版本的软件,4.1版以及5.0版。4.1版本的代码已经发布并有望在8个月后公布最终代码。而5.0版本的最后产品将在6个月后发布。 MySQL 4.1版本中增加了不少新的性能,包括对主键的更高速度的缓存,对子查询的更好的支持,以及应网络约会网站所要求的,基于地理信息的查询。 而其同步开发的5.0版本则把目标对准了企业用户,对于4.1版本中的所有新特性,

42、5.0版本悉数收入囊中,并且独具以下特点:对外键的良好支持;系统自动报错机制以及对存储过程的充分支持。 MySQL是一整套低成本的,基于SQL的客户/服务器(C/S)模式的关系数据库管理系统。它是一个开放源代码项目,可以在绝大多数的情况下免费使用,这使得它在开源社区中被广泛的使用。3 本课题基本内容在对本课题所涉及的技术背景加以研究归纳之后,确立了本系统的基本构架,并针对其基本构架进行各个模块的细化研究。本课题主要的目的是构建一个跨平台多人在线游戏平台。用户可以在其熟悉的平台上进入游戏,与不同平台的用户进行游戏。在进行游戏时,用户不必关心对方是什么平台甚至可以认为是和自己一样的平台。跨平台多人

43、在线游戏平台将为用户提供一个跨越平台、跨越地域的多人游戏平台。在整个平台中,性能处于最低位置的平台是手持移动设备。作为整个平台中的性能瓶颈,对手持移动设备的开发中的相关事宜应作为整个系统设计的参考,所有的设计都需要以满足手持移动设备的性能条件为前提和基础。3.1 系统基本构架本课题的结构大体上分为三层分别为:客户表现层,服务逻辑处理层,后台数据层。整个系统的结构和系统中三个层次的关系如图3.1所示。图 3.1 系统基本构架3.1.1 客户表现层客户表现层为用户提供最终的游戏表现功能。用户通过对所持客户端可以进行一切游戏输入同时以图像、文字形式获得游戏的反馈信息。客户表现层是唯一和用户有直接接触

44、的层面。由于跨平台技术的应用,客户表现层可选用的平台只有以下两点限制:1. 支持JVM2. 支持HTTP协议的网络连接客户表现层可能依托于基于Symbian操作系统的智能手机,Linux操作系统的PDA,Windows操作系统的个人桌面电脑,Solaris操作系统的个人电脑。跨平台技术的使用使得用户对于操作系统的选择有了最大限度的自由度,实现了客户端的平台无关性。用户同时也可以随意选择网络连接方法通过手机的GPRS连接、通过无线接入点、通络ADSL拨号上网或者通过路由器接入网络。由于系统采用HTTP连接作为网络通信协议,只要满足网页浏览的网络条件的客户端都可以应用本系统。3.1.2 服务逻辑处

45、理层服务逻辑处理层以Tomcat为容器、配合Servlet和JavaBean共同组成。Tomcat充当游戏连接服务器。JavaBean作为逻辑处理组件,完成所有Servlet转交信息的逻辑处理。整个服务逻辑处理层中的逻辑操作都被封装于相应的JavaBean中。Servlet作为通信协议处理组件,接收客户表现层所发出的游戏信息,整理之后将游戏信息交给JavaBean处理;当玩家请求游戏信息时,Servlet负责从JavaBean中调出相应数据反馈给用户。服务逻辑处理层位于本系统三层结构的中间,同时与客户表现层和后台数据层通信。它的设计是否优良关系到整个系统的可扩充性和稳定性。它与客户表现层之间存

46、在一个网络连接层,与后台数据层之间存在一个数据连接层。这两个层次的处理详见3.1.4小节。3.1.3 后台数据层后台数据层担任了数据的持久存储工作。通过MySQL数据库与JavaBean连接,可以对JavaBean的存储功能进行扩充,以满足存储游戏玩家基本信息的需求、方便进行用户权限的确认。3.1.4 网络连接层和数据连接层网络连接层和数据连接层分别存在于客户表现层与服务逻辑处理层之间和服务逻辑处理层和后台数据层之间。对他们进行封装之后,并入了服务逻辑处理层。网络连接层中用户网络连接方式的不同被Tomcat封装。用户可能通过不同的网络连接进行游戏:手持移动设备可能通过无线网络连接,也可以通过无

47、线接入点;桌面平台可以通过路由器或者拨号上网。Tomcat可以接受所有支持HTTP协议的网络连接,而不必关心网络连接是如何建立。网络连接层的封装使得用户连接方法得到最大自由。数据连接层封装了JavaBean与MySQL通信的所有事务。在JavaBean中只要采用标准的Sql语言编写数据库命令,通过数据连接层转发到具体的关系数据库中就能够得到正确的处理。这使得在需要更换数据库的情况下,服务逻辑处理层的代码根本不需要或者很少需要改动。例如,当游戏规模上升,MySQL无法满足系统需要而改用Oracle数据库时,可以很快完成修改工作,而不会使游戏运营停止过长的时间。网络连接层使得用户有更大的网络连接方式选择的余地,提高了跨平台性。数据连接层使得整个系统拥有更好的可扩充性。这两个层次被整合在了服务逻辑处理层中,实现了服务逻辑处理层的高内聚,降低了平台结构的复杂性。3.2 系统所实现的游戏针对手持移动设备客户端的程序编写为本系统特色之一。对于手持移动设备的支持将本系统的跨平台特性发挥到了极致。对于手持移动设备的编程主要采用Java ME技术。由于手持移动设备资源受限,网络连接带宽低、延迟高的特点,设计及实现时需要充分考虑手持移动设备的特性13。对于本系统中实现游戏的选择需要考

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 建筑/施工/环境 > 农业报告


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号