《中国象棋对战平台博弈系统(论文范文,JSP,JAVA,毕业设计).doc》由会员分享,可在线阅读,更多相关《中国象棋对战平台博弈系统(论文范文,JSP,JAVA,毕业设计).doc(45页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、需要本论文完整程序源代码,答辩PPT或者更多毕业论文,联系上传者即可摘 要Web游戏可以理解为是在Web浏览器上运行的游戏,客户端使用html xml javascript ajax dom vml svg,或 Flash action实现界面以及和用户的交互,服务器端开发可以使用c+ 或java通过多线程技术实现游戏逻辑处理, 也可以用IOC框架开发, 互联网的发展必然推动这种类型游戏的快速应用。此系统涉及到html xml javascript ajax dom和jsp servlet javabean等等技术,基于目前流行的jsp结合ajax技术,采用B/S体系结构开发的网页象棋游戏,在
2、网页布局与设计上使用DIV+CSS标准化技术将内容也样式进行分离,依托Internet网的广阔平台,打破了时间、地域的限制,使人们可以随时随地方便快捷地加入到web游戏中去。给用户提供一个快速便捷的游戏娱乐环境,只需要打开网页,不用安装任何程序和插件,就可以和网络上其他玩家进行互动游戏。整体系统包括:管理子系统,博弈子系统,裁判子系统和棋局研究分析子系统四大部分,博弈子系统是一个功能完备的基于web的中国象棋游戏网站中的重要组成模块,是整个系统中核心的部分,并且围绕着博弈子系统模块进行整个网站系统的总体设计。 LLAHua 关键词: Web游戏; Model2; Ajax; 网络象棋; DOM
3、; Javascript; 富因特网应用程序; 需要本论文完整程序源代码,答辩PPT或者更多毕业论文,联系上传者即可AbstractWeb games can be understood as games which running in the Web browser on users Web client and using html xml javascript ajax dom vml svg, or Flash action, as well as the realization of the interface and user interaction, server-side d
4、evelopment can use the c + + or java multi-threading technology the realization of the game logic processing, IOC framework can also be used to develop.The development of the Internet is bound to promote the game of this type of rapid application. This system involves the html xml javascript ajax do
5、m and jsp servlet javabean technology, etc.,and based on the combination of the jsp and ajax technology which is popular nowadays, this chess game website also use B / S architecture for developing. Page were layouted and designed with DIV + CSS Standardization Technical which could make sure the in
6、dependence between contents and styles.Relying on the vast Internet network platforms, breaking the time, geographical and boundaries limits, so that people can quickly and easily adding to the web game. at any time. To provide users with a fast and convenient gaming entertainment environment, need
7、only open the web page, do not install any program and plug-ins, and network will be able to interact user with other game players. The whole system, including four major subsystems: management subsystem, the game system, referees and game analysis subsystem, the game system is an very important com
8、ponent modules of the game website as core module, and the whole system was designed and developed both around the game system module.Keywords: Web Game; Model2 ; Ajax; Web Chess; DOM; Javascript; Rich Internet Applications,RIA;需要本论文完整程序源代码,答辩PPT或者更多毕业论文,联系上传者即可目录摘 要 (中文)I(英文)II第一章 概述11.1系统开发背景11.2
9、WEB游戏的优势与特性21.3 系统设计的目标41.4 系统开发与测试环境41.5可行性分析5第二章 相关技术与开发工具62.1 J2EE Web应用基础62.2 Ajax概述82.3 Div+CSS102.4开发工具11第三章 模块需求分析与总体设计133.1 需求分析说明133.2 整体系统用例图153.3整体系统业务流图153.4 系统总体设计框架16第四章 系统设计和系统实现174.1 数据库设计174.2 详细模块设计194.3 页面设计34第五章 系统实施375.1 系统运行结果375.2 模块测试与评价405.3难点及解决方法40结束语43参考文献44 需要本论文完整程序源代码,
10、答辩PPT或者更多毕业论文,联系上传者即可第一章 概述随着计算机使用的深入普及,计算机应用技术的日臻完善,以及全球性网络化、信息化的飞速发展,Internet技术彻底改变了人们的生活方式,给人们生活工作的各个方面带来了巨大的影响。本系统是一个简单的网页游戏平台。网页游戏最先起源于德国,又称Web游戏,是利用浏览器玩的游戏,它不用下载客户端,任何地方任何时间任何一台能上网的电脑就可以快乐的游戏。只要能打开IE,10秒钟即可进入游戏,不用下载庞大客户端,更不存在机器配置不够的问题。最重要的是关闭或者切换极其方便,再也不用担心上班玩游戏被BOSS逮住了 ,在游戏的界面和动态交互过程中,玩家几乎已经难
11、以区分这是浏览器上的网页应用,还是一个独立的游戏程序。1.1系统开发背景只要能打开IE,10秒钟即可进入游戏,不用下载庞大客户端,更不存在机器配置不够的问题。最重要的是关闭或者切换极其方便,再也不用担心上班玩游戏被BOSS逮住了 。上世纪90年代昙花一现的网页游戏,最近在坊间再度复苏,有所不同的是,与任何怀旧复古风无关,曾因浏览器技术硬伤而遭雪藏的网页游戏,这一次,是以完全不同的面貌充任网游经营者的救世之师。在游戏的界面和动态交互过程中,玩家几乎已经难以区分这是浏览器上的网页应用,还是一个独立的游戏程序。当然,技术硬伤被抚平之后,网页游戏最大的优势-方便性更加被发挥得肆无忌惮!不需要下载数据包
12、、不需安装客户端、不需要安装光盘,玩家只需打开网页就可以玩的游戏,从第一步-游戏参与方式上就实现了革命性改变的网页游戏,几乎可以向中国1.72亿网民张开怀抱。由于方便性所带来的游戏黏性力量是吓人的:据统计,中国2006年网络游戏人群达到率为70%,其中,QQ游戏到达率37%,联众20%,盛大20%。QQ游戏达到率遥遥领先的原因正是由于QQ的存在简化了游戏的达到途径。以此类推,将达到途径简化到极致的网页游戏(只要能上网就能玩游戏)在方便性上比QQ游戏有过之而无不及,加之拜Web2.0所赐,几乎实现了浏览器与桌面游戏在界面和交互方式上的相近。另外,网页游戏不单单停留在网页表现形式上,它还将会向手机
13、WAP和手机客户端图形网游(j2me)方式联合发展,是跨平台的,两个平台访问的是同一服务器,离线后,玩家可以通过手机继续进行且资料库共享具备了精锐魅力的网页游戏前途不可限量还有很重要的一点是网页游戏比传统网络游戏更具获益空间,网页游戏恰恰获得的是网民中有支付能力的玩家。白领玩家的特点是工作压力大,玩游戏的时间和精力少,但荷包中有足够的钞票,舍得给其所看中的网络娱乐方式投钱。web正在统治互联网,网游行业也不能例外,网页游戏很可能成为传统网游的掘墓人。传统网游已经发展到了一个临界点,目前他们正在享受自己最后的晚餐。事实上,在欧美的游戏排行榜上已经出现了一款网页游戏,我国的互联网偏娱乐,可能这种过
14、程会延迟一些,但是不会太久,该来的一定会来! 传统网游尤其是中国的传统网游早就乏味可陈,几乎没有什么原创,更不用提什么创新了,同时传统网游人群过分聚集于青少年低龄人群,使得青少年沉溺于网吧里,毁了不少孩子。欧美等发达国家的互联网都是工具性为主,而我国的互联网偏重于娱乐化,这是大家的共识,但是还有一个共识是:中国的互联网也在悄悄地改变,网民的受教育越来越高,互联网的用途正在慢慢改变;办公网络化在中国逐步走向普及,网上工作的白领人群的数量增速很快,给网页游戏带来了前所未有的契机。1.2 WEB游戏的优势与特性首先,从游戏市场和用户视角来看,网页游戏绝非主流游戏,而且也不可能成为主流。但是它满足了一
15、部分人的需求,适应了一个细分市场。网页游戏最基本的特征,显然不是绚丽的画面、高超的3D技术,而是它刺中了上班族那根潜藏已久、没时间又怕辛苦的游戏娱乐神经。网页游戏提供的轻量级娱乐,占时间少,操作简单,给忙碌紧张的上班族一丝难得的轻松快意。这是它存在的理由。即便是很多玩魔兽网游的玩家,也并不排斥玩网页游戏。不少上班族晚上回家大战魔兽,但白天上班时会偶尔打开浏览器,在XiaoNei里管理他的农场。一个是主流,一个是支流,一个是重量级大作,一个是轻量级娱乐,各有各的风格,各有各的玩法,道并行而不悖。大餐并不妨碍精制小菜的存在。如果说存在的就是合理的,那么网页游戏这种新形式的游戏,存在不仅合理,其发展
16、也是合理的:因为有市场需求。其次,比传统网络游戏更具获益空间。网页游戏尽管具备只要会上网就能玩的特点,但网页游戏并不能取传奇魔兽而代之,也正是由于参与的便捷性,决定了它最有可能攒获的是那些终日困锢在高档写字楼只尺方寸之间的白领们。数据也可以支持这一点:在中国网页游戏论坛最近所做在线调查显示,网民中的白领受访者中,有60%的人群表示在未来可接受尝试网页游戏,这个比例高于学生受访者的30%接受程度。不可低估的是,网页游戏恰恰获得的是网民中有支付能力的玩家。白领玩家的特点是工作压力大,玩游戏的时间和精力少,但荷包中有足够的钞票,舍得给其所看中的网络娱乐方式投钱,对于网游运营商角度来看,这一点显然要比
17、传统网络游戏更具获益空间。况且,中国网民中的白领大军丝毫不比广大网游玩家逊色,据有关部门统计,目前中国1.72亿的网民之中,网游玩家占30%,剩余的70%人群中,白领人群占到其中的40%以上,即5100多万,按照白领中60%对网页游戏感兴趣的比例计算,这种新形态的网络游戏天然获得了将近3000万的支持。加之有强劲的支付能力作为支持,网页游戏抓取的人群显然是块丰沃的土壤。再次,从游戏制作者的视角来看,网页游戏最大的贡献是它提供了一个低门槛的、通向财富和名声之路。为什么这么说?网页游戏天然就是网络游戏。在这里,网络通信细节被浏览器实现了,屏蔽了,游戏开发者无需购买昂贵的网游引擎,就可廉价地实现网络
18、游戏。这对于中国的游戏制作者意义重大。因为中国这样一个盗版横行的环境里,单机游戏,无论是PC上的还是手机上的,无论是粗制滥造的还是呕心沥血的精品,都无赢利的可能。游戏在中国要赚钱,要赢利,只能靠网络游戏。但传统的PC网游开发成本巨高,变成了几个垄断巨头之间的游戏。网页游戏的出现,大大降低了网游制作的门槛,使没有充裕资金的小公司或小团队,可以选择在网页游戏方面试试他们的运气,这时取胜的法宝是创新、创意和对玩家需求的深度挖掘。网页游戏,也就变成了“穷人也能做得起的网游”。从受众群体容量来说,网页游戏有天然优势。能通过浏览器上网的人都是网页游戏的潜在受众。这个群体非常巨大,多巨大?2007年CNNI
19、C调查显示:中国网民数量达1.37亿,世界第二。据市场统计,中国2006年网游的收入是59亿,人群达到率70%,其中,QQ游戏到达率37%(5000万人),联众:20%(2700万), 盛大:19%。这里有一个细节值得研究:为什么QQ游戏的达到率远高于盛大?因为有QQ的存在,它提供了简化的到达途径。人性都是懒惰的,喜爱用举手之劳的操作来达到目的。在QQ上一点击就能达到QQ游戏,而盛大就没有这样的利器,联众更没有。游戏的到达率与简便的途径关系非常密切。与此类似,网页游戏,使用浏览器把游戏体验的途径简化到了极致:能上网的人,都可以“无需下载任何东西,无成本、无等待”地玩网页游戏,只要输入URL就可
20、。这种简化是革命性的,与PC网游成鲜明对比。PC网游需要下载300M以上(有的甚至超过1G)的客户端,无法与网页游戏的便利性相比。因此,网页游戏有巨大的潜在受众,又把体验游戏的过程简化到了极致,其发展潜力不容忽视,现在所缺的,就是好游戏。结合前面的论述,可以总结出Web游戏与传统网游的主要区别:(1)从构架上看,web游戏是web网页功能的扩展,属于B/S构架。而传统网游既有服务器端程序,也有客户端应用程序,是C/S的构架。(2)从配置要求上看,web游戏只需要台安装了浏览器,能够上网的计算机即可,几乎目前所以的计算机都能到达要求;而传统网游根据游戏的不同对于配置的要求也有高有低,当前传统的网
21、络游戏已经步入了3D化,就市面上大多数商业运营的3D网游基本上要求比较高的电脑配置。(3)操作系统的兼容性上看,由于web游戏是运行在浏览器上的,因此,只要是安装了浏览器能够上网的操作系统都能玩,因此理论上几乎所有的操作系统都兼容。而且不仅在计算机上,在像手机这样只要是能接入网络的移动终端上都能玩。而传统网游是大部分都是针对windows操作系统开发的,要再开发linux,mac os等版本的客户端程序必然是一项很复杂的工作,即使有提供多个操作系统版本的游戏那也只是所有游戏中的很小一部分。因此操作系统的兼容性是传统网游的一个劣势。(4)方便性:通过之前的论述可以看出,web游戏的方便性绝对是毋
22、庸置疑的。而传统网游就不一样了,在开始游戏之前,必须先要下载和安装客户端程序,而客户端程序至少也要几百MB到几个GB(比如魔兽世界,客户端程序达到8GB)的磁盘空间,并且随着游戏内容的更新还必须要花不少时间和精力进行游戏客户端程序的更新。虽然现在大容量的磁盘已经普及开了,但是这么大的数据量移动和管理起来是很不方便的。(5)游戏内容:由于现阶段网络技术的现实,web游戏不可能在短时间传输非常大的数据量,所以现阶段的web游戏基本上都是娱乐消遣性质的轻型的小游戏。而传统游戏内容则包罗万象,有小型的消遣的小游戏,也有画面气势磅礴,壮丽宏伟并且有着史诗般背景设定的大作。传统游戏的内容是现阶段web游戏
23、绝对无法比拟的。1.3 中国象棋游戏简介中国象棋是中华民族的珍贵的传统文化,有着悠久的历史并且拥有数以亿计的爱好者。它不仅能丰富文化生活,陶冶情操,更有助于开发智力,启迪思维,锻炼辨证分析能力和培养顽强的意志。不仅在国内深受群众喜爱,而且流传国外。目前已有大量的中国象棋游戏平台存在,但大部分都需要安装相关软件或插件才能使用。1.4 系统设计的目标本课题的目的是设计并实现一个象棋游戏的网页游戏系统。包括博弈,裁判,管理,分析子系统。总体系统是基于目前流行的jsp结合ajax技术,采用B/S体系结构,在网页布局与设计上使用DIV+CSS标准化技术将内容也样式进行分离,依托Internet网的广阔平
24、台,打破了时间、地域的限制,使人们可以随时随地方便快捷地加入到web网络象棋游戏中去,在游戏中寻找到乐趣,轻松快捷愉快的享受游戏的过程,丰富人们的生活和娱乐。博弈子系统模块的设计目标是要实现棋盘及棋子各个元素的内部驱动和操作接口,使其作为独立的,可重用,可操作,可供其他各个子系统调用的对象。包括走子,吃子,布局等等功能接口。1.5 系统开发与测试环境1.5.1 服务器配置硬件:处理器:需要 PentiumIII兼容处理器或更高速度的处理器,最低600MHz,建议1GHz以上内存 (RAM):最小512MB,建议1GB以上硬盘:建议10GB以上显示器:需要VGA或更高分辨率 分辨率至少为1024
25、x768像素软件:操作系统要求:Windows XP professionalInternet软件:Eclipse 3.2Apache Tomcat 6.0Microsoft SQL Server 2000 Enterprise Edition1.5.2客户端配置安装并可运行浏览器软件,建议Microsoft Internet Explorer 6.0以上1.6可行性分析此次信息系统开发是大学专业知识的一次综合应用与提高,计算机主要是安装数据库工具(MS SQL SERVER 2000),WEB应用程序开发工具(MyEclipse 6.0),Web服务器Tomcat,OFFICE程序组以及网络
26、传输工具。在技术方面,开发过程中会出现许多问题,有预想之中的,也有一些没有预想到,但通过对J2EE和SQL SERVER的了解和进一步学习,以及对网络技术、计算机原理和操作系统的了解,确定能解决常见的软硬件故障。目前,虽然关于Web游戏开发的资料很少,但是由于其使用的技术很多都是当前流行的部分技术的整合应用,并且,关于J2EE,Ajax等的资料和SQL SERVER方面的资料可供参考的资料很多,只要学会这些技术并且能够灵活变通和运用,这个系统是可以开发成功的,当系统开发完实际运行后,将在一定程度上丰富计算机和网络的功能,在为使用者带来便利的同时,也为系统的进一步推广创造了条件。第二章 相关技术
27、与开发工具2.1 J2EE Web应用基础2.1.1 J2EE规范图书J2EE( Java 2 Platform Enterprise Edition)是SUN公司定义的一个开发分布式企业级应用的规范。它提供了一个多层次的分布式应用模型和一系列开发技术规范。多层次分布式应用模型是指根据功能把应用逻辑分成多个层次,每个层次支持相应的服务器和组件,组件在分布式服务器的组件容器中运行(如Servlet组件在Servlet容器上运行,EJB组件在EJB容器上运行),容器间通过相关的协议进行通讯,实现组件间的相互调用。遵从这个规范的开发者将得到行业的广泛支持,使企业级应用的开发变得简单、快速。J2EE体
28、系结构提供中间层集成框架用来满足无需太多费用而又需要高可用性、高可靠性以及可扩展性的应用的需求。通过提供统一的开发平台,J2EE降低了开发多层应用的费用和复杂性,同时提供对现有应用程序集成强有力支持,完全支持Enterprise JavaBeans,有良好的向导支持打包和部署应用,添加目录支持,增加安全机制,提高了性能。2.1.2 J2EE核心技术J2EE规范中的主要技术包括:EJB(服务器端分布式组件技术)、Servlet / JSP (主要用于 Web 服务器端来完成请求响应等 Web 功能及简单商业逻辑的技术)、JNDI (名称与目录服务 API )、JDBC (对关系型数据库进行操作的
29、连接桥)、JMS(提供异步消息处理机制)、JTA / JTS(组件的事物处理支持)、JavaMail/ JAF (提供与平台无关的电子邮件服务功能)、JCA(用于与其它系统进行集成)以及 XML(一些 J2EE 技术的所依靠的技术)。下面介绍课题设计中所用到的J2EE技术JSP技术:JSP(Java Server Page)是由Sun Microsystems公司推出的一种集成HTML及Java程序于一个网页的技术,让网页设计者能轻易而有弹性地建立互联网应用程序。JSP是基于Java Servlet以及整个Java体系的Web开发技术,利用这一技术可以建立安全的、跨平台的先进动态网站,这项技术
30、还在不断的被更新和优化。在传统的网页HTML 文件(*.htm,*.html)中加入Java程序片段(Scriptlet)和JSP标记(tag), 就构成了JSP网页(*.jsp)a Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序片段,然后将执行结果以HTML格式返回给客户。程序片段可以操作数据库、重新定向网页以及发送email等等,这就是建立动态网站所需要的功能。所有程序操作都在服务器端执行,网络上传送给客户端的仅是得到的结果,对客户浏览器的要求最低,可以实现无Plugin,无ActiveX,无Java Applet,甚至无Frame.JSP让动态网页更易编写,功能更强,可移植
31、性更好,它的设计目标主要有以下几点:1一次编写,处处运行JSP技术是完全的与平台无关的设计,包含它的动态网页与底层的服务组件设计。可以在任何平台下编写JSP网页并在任何支持JSP的系统上执行。也可建立自己的组件,并在JSP中使用。目前主要是JavaBeans和Java Servlet,而它们都是跨平台的。2加强组件能力JSP技术已Java的组件模型JavaBeans加强了组件的使用能力。这不但省去了开发的时间,而且还可以将网页页面设计与商业逻辑分开,有助于快速开发和简单维护。3作为Java企业平台的门户JSP高度整合了Java企业平台部分(Java专注于企业应用方面的平台技术,如JDBC、JN
32、DI、JINI等)。可以利用Java的企业级API开发企业的各种需求系统,而使用JSP作为这些技术的前端。当需要升级应用程序时,只需升级组件与动态页面部分,而这些都存在于服务器上,所以修改服务器上的资源,所有客户端的显示都会跟着改变。4更容易建立动态页面JSP就是用标准HTML语法混合自身语法标记,不需要有使用Java、C+等程序设计语言的能力与经验,实现简单容易开发页面的需要。2.1.3 JSP的Model1和Model2方案基于 JSP的设计方案主要有Model1与Mode12两种,它们分别面向不同的应用场景。1)JSP的Model1设计JSP Model1是指JSP+JavaBean技术
33、。在该模式中,JSP页面独自响应请求并经处理后把结果返回客户端,所有的业务数据通过JavaBean来处理,JSP实现页面的显示。通过应用Model1,可以实现页面的显示和内容的初步分离。但是大量使用此模式时可能带来一个副作用,那就是会导致在页面里嵌入大量的Java控制代码,当要处理的业务逻辑复杂时,这种情况会更糟。同时,大量的内嵌代码使得页面变得很庞大,也很复杂,当页面的功能实现后交给美工进行设计时,问题就变得更严重了。所以,在大型项目里,这种方法将会导致页面的维护困难。2)JSP的Model2设计利用Servlet和JSP可以互补的性质,也就是用JSP来表示页面显示部分,用Servlet来控
34、制它们。这样,请求最初被送到一个作为中介或者控制器的Servlet中,它把请求分配到适当的JSP网页和JavaBean处。这种方案即为JSP Model2设计。这种方案在Java Web应用程序中包含了一个控制器Servlet作为整个应用程序的入口。这个入口本身不产生输出,但会对请求进行处理,也可以管理会话和应用程序状态,以及把请求重定向到适当的JSP视图或者一个知道如何处理请求的子控制器。模型由JavaBean二生成,由控制器管理,并且可以由JSP视图使用。这种方案的实现经常在每个请求中包含一个操作或者类似名字的参数。这个参数的值由控制器检查,控制器用它来决定如何处理此请求。也可以由控制器J
35、SP或者Servlet来截获全部进入的请求,并且根据请求决定正确的处理办法。JSP Model2 结构是建立便于维护的JSP系统的最宝贵方式之一。它是真正用于JSP网页的设计方案。使用这种方案建立的系统比使用JSP Model 1的方式具有更强的灵活性和扩展性,并且也更好的把信息显示与内容分开。它的独立组件比较多,但是每个组件都有明确定义的职责,并且Java类和JSP网页也在最适当的场合使用。这是一种著名的、非常出色的解决方案,和前面介绍的结构比起来,它的JSP代码更便于管理。使用 JSP Model2 结构,具体的优点是很丰富的。(1) 提高了可维护性。几乎所有的JSP网页都可以由设计开发组
36、维护。(2) 安全性由控制器管理,对于JSP视图是透明的。(3) 大提高了代码重用性。(4) 控制器Servlet以一致的方式透明的处理出错报告。2.1.4 MVC模式MVC(Model-View-Controller)模式,即模型-视图-控制器模式,其核心思想就是将整个程序代码分成相对独立而又能协同工作的3个组成部分。(1)模型(Model):业务逻辑层。实现具体的业务逻辑、状态管理的功能。(2)视图(View):表示层。即与用户实现交互的界面,通常实现数据的输入和输出功能。(3)控制器(Controller):控制层。起到控制整个业务流程(Flow Control)的作用,实现View和M
37、odel部分的协同工作。MVC设计模式可以针对需求为同样的数据提供多个不同视图的应用程序。在该模式中,事件一般是指客户端Web浏览器提交的各种不同的请求,这些请求由控制器进行处理,控制器根据事件的类型来改变模型或各个视图,视图也可以接受模型发出的数据更新的通知,依据数据更新的结果调整视图效果,呈现在用户面前。而模型也可以通过视图所获得的用户提交的数据进行具体业务逻辑的处理。2.2 Ajax概述AJAX全称为“Asynchronous JavaScript and XML”(异步JavaScript和XML),是指一种创建交互式网页应用的网页开发技术。 国内通常的读音为“阿贾克斯”和阿贾克斯足球
38、队读音一样。Web应用的交互如Flickr, Backpack和Google在这方面已经有质的飞跃。这个术语源自描述从基于网页的Web应用到基于数据的应用的转换。在基于数据的应用中,用户需求的数据如联系人列表,可以从独立于实际网页的服务端取得并且可以被动态地写入网页中,给缓慢的Web应用体验着色使之像桌面应用一样。 虽然大部分开发人员在过去使用过XMLHttp或者使用Iframe来加载数据,但仅到现在我们才看到传统的开发人员和公司开始采用这些技术。就像新的编程语言或模型伴随着更多的痛苦,开发人员需要学习新的技巧及如何最好利用这些新技术。2.2.1 Ajax模式许多重要的技术和AJAX开发模式可
39、以从现有的知识中获取。例如,在一个发送请求到服务端的应用中,必须包含请求顺序、优先级、超时响应、错误处理及回调,其中许多元素已经在Web服务中包含了。AJAX开发人员拥有一个完整的系统架构知识。同时,随着技术的成熟还会有许多地方需要改进,特别是UI部分的易用性。AJAX开发与传统的B/S开发有很大的不同。这些不同引入了新的编程问题,最大的问题在于易用性。由于AJAX依赖浏览器的JavaScript和XML,浏览器的兼容性和支持的标准也变得和JavaScript的运行时性能一样重要了。这些问题中的大部分来源于浏览器、服务器和技术的组合,因此必须理解如何才能最好的使用这些技术。综合各种变化的技术和
40、强耦合的客户服务端环境,AJAX提出了一种新的开发方式。AJAX开发人员必须理解传统的MVC架构,这限制了应用层次之间的边界。同时,开发人员还需要考虑CS环境的外部和使用AJAX技术来重定型MVC边界。最重要的是,AJAX开发人员必须禁止以页面集合的方式来考虑Web应用而需要将其认为是单个页面。一旦UI设计与服务架构之间的范围被严格区分开来后,开发人员就需要更新和变化的技术集合了。AJAX的最大机遇在于用户体验。在使应用更快响应和创新的过程中,定义Web应用的规则正在被重写;因此开发人员必须更注重用户。现在用户已经逐渐习惯如何使用Web应用了。例如用户通常希望每一次按钮点击会导致几秒的延迟和屏
41、幕刷新,但AJAX正在打破这种长时间的状况。因此用户需要重新体验按钮点击的响应了。可用性是AJAX另人激动的地方而且已经产生了几种新颖的技术。其中最引人注目的是一种称为“黄色隐出”的技术,他在数据更新之前时将用户界面变为黄色,更新完成后立刻恢复原来的颜色。AJAX开发人员将用户从Web应用的负载中解放出来;小心地利用AJAX提供的丰富接口,不久桌面开发人员会发现AJAX是他们的方向。2.2.2 Ajax整合的技术JavaScript如名字所示AJAX的概念中最重要而最被忽视的是他也是一种JavaScript编程语言。JavaScript是一种粘合剂使AJAX应用的各部分集成在一起。在大部分时间
42、,JavaScript通常被服务端开发人员认为是一种企业级应用不需要使用的东西应该尽力避免。这种观点来来自以前编写JavaScript代码的经历:繁杂而又易出错的语言。类似的,他也被认为将应用逻辑任意地散布在服务端和客户端中,这使得问题很难被发现而且代码很难重用。在AJAX中JavaScript主要被用来传递用户界面上的数据到服务端并返回结果。XMLHttpRequest对象用来响应通过HTTP传递的数据,一旦数据返回到客户端就可以立刻使用DOM将数据放到网面上。XMLHttpRequestXMLHttpRequest对象在大部分浏览器上已经实现而且拥有一个简单的接口允许数据从客户端传递到服务
43、端,但并不会打断用户当前的操作。使用XMLHttpRequest传送的数据可以是任何格式,虽然从名字上建议是XML格式的数据。开发人员应该已经熟悉了许多其他XML相关的技术。XPath可以访问XML文档中的数据,但理解XML DOM是必须的。类似的,XSLT是最简单而快速的从XML数据生成HTML或XML的方式。许多开发人员已经熟悉Xpath和XSLT,因此AJAX选择XML作为数据交换格式有意义的。XSLT可以被用在客户端和服务端,他能够减少大量的用JavaScript编写的应用逻辑。CSS为了正确的浏览AJAX应用,CSS是一种AJAX开发人员所需要的重要武器。CSS提供了从内容中分离应用
44、样式和设计的机制。虽然CSS在AJAX应用中扮演至关重要的角色,但他也是构建创建跨浏览器应用的一大阻碍,因为不同的浏览器厂商支持各种不同的CSS级别。2.2.3 Ajax的缺陷Ajax使用javascript。而JavaScript编程的最大问题来自不同的浏览器对各种技术和标准的支持。构建一个运行在不同浏览器(如IE和火狐)是一个困难的任务。另一个JavaScript和AJAX开发中的问题是调试困难。不同的浏览器提供不同的通常是隐藏的运行时错误信息,而JavaScript的缺陷如双重变量赋值(通常是由于缺少数据类型)使得调试更加困难。在AJAX的开发中,调试就更复杂了,因为其需要标识究竟是客户
45、端还是服务端产生的错误。2.3 Div+CSS2.3.1 Div+CSS简介DIV+CSS是网站标准(或称“WEB标准”)中常用术语之一,通常为了说明与HTML网页设计语言中的表格(table)定位方式的区别,因为XHTML网站设计标准中,不再使用表格定位技术,而是采用DIV+CSS的方式实现各种定位。CSS是英语Cascading Style Sheets(层叠样式表单)的缩写,它是一种用来表现 HTML 或 XML 等文件式样的计算机语言。DIV元素是用来为HTML文档内大块(block-level)的内容提供结构和背景的元素。DIV的起始标签和结束标签之间的所有内容都是用来构成这个块的,
46、其中所包含元素的特性由DIV标签的属性来控制,或者是通过使用样式表格式化这个块来进行控制。2.3.2 优势与意义(1)使页面载入得更快由于将大部分页面代码写在了CSS当中,使得页面体积容量变得更小。相对于表格嵌套的方式,DIV+CSS将页面独立成更多的区域,在打开页面的时候,逐层加载。而不像表格嵌套那样将整个页面圈在一个大表格里,使得加载速度很慢。 (2)降低流量费用页面体积变小,浏览速度变快,这就使得对于某些控制主机流量的网站来说是最大的优势了。 (3)修改设计时更有效率由于使用了DIV+CSS制作方法,在修改页面的时候更加容易省时。根据区域内容标记,到CSS里找到相应的ID,使得修改页面的
47、时候更加方便,也不会破坏页面其他部分的布局样式。 (4)保持视觉的一致性DIV+CSS最重要的优势之一:保持视觉的一致性;以往表格嵌套的制作方法,会使得页面与页面,或者区域与区域之间的显示效果会有偏差。而使用DIV+CSS的制作方法,将所有页面,或所有区域统一用CSS文件控制,就避免了不同区域或不同页面体现出的效果偏差。 (5)更好地被搜索引擎收录由于将大部分的HTML代码和内容样式写入了CSS文件中,这就使得网页中正文部分更为突出明显,便于被搜索引擎采集收录。 (6)对浏览者和浏览器更具亲和力我们都知道网站做出来是给浏览者使用的,对浏览者和浏览器更具亲和力,DIV+CSS在这方面更具优势。由
48、于CSS富含丰富的样式,使页面更加灵活性,它可以根据不同的浏览器,而达到显示效果的统一和不变形。2.4开发工具2.4.1 MyEclipseMyEclipse企业级工作平台(MyEclipse Enterprise Workbench ,简称MyEclipse)是对Eclipse IDE的扩展,利用它我们可以在数据库和J2EE的开发、发布,以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的J2EE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML, Struts, JSF, CSS, Javascript, SQL, Hibernate。2.4.2 TomcatTomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发