1、天津市大学软件学院毕业论文基于HTML5的游戏网站开发与实现姓 名 胡方泳 专 业 软件工程 学 号 1450411109 学 籍 校 天津工业大学 学校指导教师 黄橡丽(副教授) 企业指导教师 黄 熙(工程师) 二一六年五月目 录摘 要- 6 -第一章 开发游戏网站的目的- 7 -1.1课题来源- 7 -1.2开发本系统的目的- 8 -第二章 系统开发环境- 8 -2.1编程环境的选择- 8 -2.1.1操作系统的选择- 8 -2.1.2 开发技术的选择- 9 -2.1.2.1 HTML5静态网页技术简介- 9 -2.1.2.2 JSP动态网页技术简介- 9 -2.2数据库软件- 10 -2
2、.2.1 数据库软件的选择- 10 -第三章 搭建系统开发环境- 11 -3.1 JSP与数据库的结合- 11 -3.2 JSP软件的安装和运行环境的设置- 11 -3.2.1 安装JDK和Apache服务器- 11 -3.2.2 设置环境变量- 11 -3.2.3 安装Tomcat- 11 -第四章 系统分析设计- 12 -4.1 系统调研与设计- 12 -4.1.1 本系统模块图- 12 -4.1.2 模块功能- 12 -4.2 数据库的设计- 13 -4.2.1数据库设计- 13 -4.2.2 数据字典- 13 -第五章 网站测试- 13 -5.1 建立数据库- 14 -5.2 访问数据
3、库的方法- 15 -5.2.1数据库连接Bean- 15 -5.2.2导入JDBC标准类库- 15 -5.2.3注册数据库驱动程序- 16 -5.2.4建立数据库连接- 16 -5.2.5数据操作- 17 -5.2.6关闭- 18 -5.3 配置ODBC数据源- 19 -5.3.1主界面的实现与设计- 20 -5.4新闻中心模块的实现与设计- 21 -5.5 游戏介绍模块的实现与设计- 22 -5.6 游戏图片模块的实现与设计- 23 -5.7 职业宝典模块的实现与设计- 26 -5.8 留言模块的实现与设计- 28 -结 论- 35 -参考文献- 36 -致 谢- 37 -摘 要网络游戏产业
4、是一个新兴的朝阳产业,经历了20世纪末的初期形成期阶段,及近几年的快速发展,现在中国的网络游戏产业处在成长期,并快速走向成熟期的阶段。在中国整个网络经济的发展过程中从无到有,发展到目前成为中国网络经济的重要组成部分。网络游戏产业之所以可以打破在原来中国整个网络经济中的平衡,主要缘于在20世纪末中国网络经济泡沫破灭整个网络经济大受打击的时候,网络游戏却异军突起成为整个网络经济发展的领头羊,得到迅猛的发展。但是对于游戏网站的的制作现在各大游戏公司只针对自家游戏网站进行宣传,而忽略了大众所想要的游戏需求。我所做的是将当前绝大多数游戏资源经行整合,利用 html5技术将各种各样的游戏论坛展现出来,让玩
5、家在选择游戏时有了更多的参考。这里将用到flish动画技术以及ps设计。这些将增加网站的观赏性。用dw建立网站前端。关键词:游戏, html5、论坛ABSTRACT Network game industry is an emerging sunrise industry, has experienced the beginning of the end of the 20th century formation stage, and in recent years, rapid development, now Chinas online game industry is in growth
6、 period, and rapidly towards the mature stage. In the whole process of the development of network economy in China from scratch, development up to now become an important part of network economy in China. Network game industry can break the original balance of the whole network economy in China, mai
7、nly due to China at the end of the 20th century the dotcom bubble burst in the network economy big hit, network game industry become the leader in the development of network economy, get rapid development. But for game website。 Key words:game;; html55;forum第一章 开发游戏网站的目的1.1游戏网站发展现状 网络游戏产业是一个新兴的朝阳产业,经
8、历了20世纪末的初期形成期阶段,及近几年的快速发展,现在中国的网络游戏产业处在成长期,并快速走向成熟期的阶段。在中国整个网络经济的发展过程中从无到有,发展到目前成为中国网络经济的重要组成部分。网络游戏产业之所以可以打破在原来中国整个网络经济中的平衡,主要缘于在20世纪末中国网络经济泡沫破灭整个网络经济大受打击的时候,网络游戏却异军突起成为整个网络经济发展的领头羊,得到迅猛的发展。电脑游戏行业经过二十年的发展,已经成为与影视、音乐等并驾齐驱的全球最重要的娱乐产业之一,其年销售额超过好莱坞的全年收入。互联网的出现为电脑游戏行业发展注入了新的活力,凭借信息双向交流、速度快、不受空间限制等优势,让真人
9、参与游戏,提高了游戏的互动性、仿真性和竞技性,使玩家在虚拟世界里可以发挥现实世界无法展现的潜能,改变了单机版游戏固定、呆板、与机器对话的状况。网络游戏的这些优势不仅使其在电脑游戏行业中异军突起并在某种程度上取代了单机版游戏,而且成为网络业三大(网上金融、网上教育和网络游戏)赢利且利润优厚的领域之一。而游戏网站的制作都是比较单一,目前没有一个综合类型的游戏网站.1.2开发本网站的目的2008年上半年国产网游发展迅猛,主要原因有两个:一是政策环境、舆论环境转好,二是代理模式的弊端暴露无遗。网络游戏运营商市场格局方面,2008年第二季度盛大、网易、巨人位居行业排名前3位,随后腾讯发展迅猛,2011年
10、-2012年腾讯蝉联榜首。这些游戏公司只针对自家公司的游戏经行宣传与整合,然而玩家们都是比较随意对于游戏是由那家公司开发兴趣不大,只针对游戏本身的可玩性有兴趣。发开这样的网站目的是为了,让各大公司主打游戏经行整合,通过对游戏的介绍让玩家在玩游戏之前先对游戏经行了解,通过各大游戏论坛以及玩家对游戏的评价,本网站目的不是针对一家游戏公司经行宣传,网站目标就是让玩家更好的了解各大公司的主打游戏,从而更好的经行选择适合自己的游戏。每一个产业,在其发展成熟的道路中,都必须经历由不规范走向规范的过程,而这一过程中必将伴随着这样或那样的阻碍因素,中国的网络游戏产业也不例外。因此需加大政府的扶持力度、加快人才
11、培养步伐、重点研发精品网络游戏等。中国游戏市场潜力巨大,在未来几年内,中国将从资金投入、创造产业环境、保护知识产权以及加强对企业引导等方面对国内的游戏企业加以扶持。亚洲将是未来全球网络游戏的重要市场,而中国和日本将成为地区最大的两个在线游戏市场。游戏市场潜力巨大,一个好的游戏网站能做到最大的宣传。在在于如何留住玩家以及游戏攻略就需要各玩家之间的的相互交流,这时候论坛就是最好的沟通方式,在宣传游戏前可以让玩家进入论坛浏览一番那些已经资深玩家的对游戏的评价,也能更精准的定位游戏人群。第二章 系统开发环境2.1编程环境的选择2.1.1操作系统的选择目前可供选择的操作系统有很多,有Windows、Li
12、nux和Unix等。Windows具有界面图形化、多用户、多任务、网络支持良好、出色的多媒体功能、硬件支持良好和众多的应用程序等特点。Linux是一种类Unix系统,是一个免费的操作系统,具有许多Unix系统的功能和特点,能够兼容Unix,但它没有Windows操作系统应用广泛,其上的应用软件种类较Windows少了很多,Windows上的很多应用软件在该系统上通常无法正常运行。而且许多硬件设备面对Linux的驱动程序也很不足。Unix适用于一些大型的网络。Unix与Linux这两种操作系统与Windows操作系统相比是比较复杂的, 而且Linux在技术上还不很成熟。经过多番比较,为了更好的开
13、发和操作本系统,决定采用以下系统软件:操作系统:microsoft Windows XP professional2.1.2 开发技术的选择2.1.2.1 HTML5静态网页技术简介 HTML5(HyperText Mark-up Language)即超文本标记语言或超文本链接标示语言,是目前网络上应用最为广泛的语言,也是构成网页文档的主要语言。设计 HTML5语言的目的是为了能把存放在一台电脑中的文本或图形与另一台电脑中的文本或图形方便地联系在一起,形成有机的整体,人们不用考虑具体信息是在当前电脑上还是在网络的其它电脑上。我们只需使用鼠标在某一文档中点取一个图标,Internet就会马上转到
14、与此图标相关的内容上去,而这些信息可能存放在网络的另一台电脑中。 HTML5文本是由 HTML5命令组成的描述性文本, HTML5命令可以说明文字、图形、动画、声音、表格、链接等。 HTML5的结构包括头部(Head)、主体(Body)两大部分,其中头部描述浏览器所需的信息,而主体则包含所要说明的具体内容。 另外, HTML5是网络的通用语言,一种简单、通用的全置标记语言。它允许网页制作人建立文本与图片相结合的复杂页面,这些页面可以被网上任何其他人浏览到,无论使用的是什么类型的电脑或浏览器。神奇吗?一点都不神奇,因为现在你看到的就是这种语言写的页面! HTML5只不过是组合成一个文本文件的一系
15、列标签。它们像乐队的指挥,告诉乐手们哪里需要停顿,哪里需要激昂。 HTML5标签通常是英文词汇的全称(如块引用:blockquote)或缩略语(如“p”代表Paragraph),但它们的与一般文本有区别,因为它们放在单书名号里。故Paragragh标签是,块引用标签是。有些标签说明页面如何被格式化(例如,开始一个新段落),其他则说明这些词如何显示(使文字变粗)还有一些其他标签提供在页面上不显示的信息例如标题。 基本 HTML5页面以DOCTYPE开始,它声明文档的类型,且它之前不能有任何内容(包括换行符和空格),否则将使文档声明无效,接着是标签,以结束。在它们之间,整个页面有两部分-标题和正文
16、。 2.1.2.2 JSP动态网页技术简介JSP(Java Server Pages)是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。JSP技术有点类似ASP技术,它是在传统的网页 HTML5文件(*.htm,*. html5)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件(*.jsp)。 用JSP开发的Web应用是跨平台的,即能在Linux下运行,也能在其他操作系统上运行。JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。网页还能通过tags和scriptl
17、ets访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的 HTML5代码一起返回给客户。插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。JSP与Java Servlet一样,是在服务器端执行的,通常返回该客户端的就是一个 HTML5文本,因此客户端只要有浏览器就能浏览。JSP的1.0规范的最后版本是1999年9月推出的,12月又推出了1.1规范。目前较新的是JSP1.2规
18、范,JSP2.0规范的征求意见稿也已出台。JSP页面由 HTML5代码和嵌入其中的Java代码所组成。服务器在页面被客户端请求以后对这些Java代码进行处理,然后将生成的 HTML5页面返回给客户端的浏览器。Java Servlet 是JSP的技术基础,而且大型的Web应用程序的开发需要Java Servlet和JSP配合才能完成。JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的所有特点。自JSP推出后,众多大公司都支持JSP技术的服务器,如IBM、Oracle、Bea公司等,所以JSP迅速成为商业应用的服务器端语言。2.2数据库软件2.2.1 数
19、据库软件的选择Access (Microsoft Office Access(前名 Microsoft Access)是由微软发布的关联式数据库管理系统。它结合了 Microsoft Jet Database Engine 和 图形用户界面两项特点,是 Microsoft Office的成员之一。Access能够存取 Access/Jet、Microsoft SQL Server、Oracle(甲骨文软件公司),或者任何 ODBC 兼容数据库内的资料。熟练的软件设计师和资料分析师利用它来开发应用软件,而一些不熟练的程序员和非程序员的进阶用户则能使用它来开发简单的应用软件。虽然它支援部份面向对象
20、(OO)技术,但是未能成为一种完整的面向对象开发工具。它的使用方便程度和强大的设计工具为初级程序员提供许多功能。不过,这种便于使用可能使人误解。这类开发者都是没有在应用或者数据设计方面训练的办公室从业人员。因此许多人以为这样的开发者能够创造可用的系统,但也有很多人认为工具本身的局限性产生了这样的误导。一些专业的应用程序开发人员使用 Access 用作 快速应用开发,特别是给街道上的推销员制作一个初型或独立应用程序的工具。可是如果是透个网络存取数据的话,Access 的可扩放性并不高因此当程序被较多使用者使用时,他们的选择多会是倾向于一些客户端-服务器为本的方案,例如 Oracle、DB2、Mi
21、crosoft SQL Server、Windows SharePoint Services、PostgreSQL、MySQL、Alpha Five、MaxDB,或者Filemaker。无论如何,不少 Access 的功能(表单,报告,序列和VB代码)可以用作其他数据库的后期应用,包括 JET(档案为主的数据库引擎,Access 缺省使用)、Microsoft SQL Server、Oracle和任何其他跟ODBC兼容的产品。这种方法允许开发者把一个成熟的应用的数据移动到一台更大功率的服务器而没有已经在适当的位置牺牲发展。数据库软件:microsoft office access 2003。第
22、三章 搭建系统开发环境3.1 JSP与数据库的结合SUN公司为JSP连接数据库的JDBC技术提供了四种类型的驱动,数据库连接对动态网站来说是最为重要的部分,Java中连接数据库的技术是JDBC(Java Database Connectivity)。Java程序通过JDBC驱动程序与数据库相连,执行查询、提取数据等操作。Sun公司还开发了JDBC-ODBC bridge,用此技术Java程序就可以访问带有ODBC驱动程序的数据库,目前大多数数据库系统都带有ODBC驱动程序,所以Java程序能访问诸如Oracle,Sybase,MS SQL Server和MS Access等数据库。3.2 JS
23、P软件的安装和运行环境的设置3.2.1 安装JDK和Apache服务器双击j2sdk-tomcat-5.0.30.exe可以开始安装,安装到C:jdk1.3.1_06后重启。双击apache服务器的安装程序,使用默认配置进行安装。3.2.2 设置环境变量Sun公司的JDK是Java应用程序和组建的开发环境,是编译和测试工具,也是提供Java程序的Java虚拟机平台,是调试和运行JSP所不可缺少的工具。其安装步骤如下: 1.双击JDK安装程序开始安装,在安装过程中使用默认配置即可。2.重新启动计算机,更新环境变量。 3.2.3 安装TomcatTomcat是最先实现Servlet2.2和JSP1
24、.1技术标准的服务器软件。它既可以用作小型独立的服务器来测试和运行JSP页面,也可以集成到Apache服务器中。Tomcat是Apache上实现JSP+JavaBean环境的接口程序。安装Tomcat的方法如下:第一步:安装和配置你的j2sdk和tomcat:执行j2sdk和tomcat的安装程序,然后按默认设置进行安装即可。1.安装j2sdk以后,需要配置一下环境变量,在我的电脑-属性-高级-环境变量-系统变量中添加以下环境变量。2.安装Tomcat后,在我的电脑-属性-高级-环境变量-系统变量中添加以下环境变量。第二步:建立自己的jsp app目录。 第三步:建立自己的Servlet。 第
25、四步:建立自己的Bean。第四章 网站分析设计4.1 网站调研与设计4.1.1 本网站模块图游戏网站主页 英雄联盟魔兽世界穿越火线新闻中心游戏新版本发布人物介绍绍游戏介绍介绍游戏道具游戏介绍 游戏人物介绍官方游戏公告评价系统新闻公告4.1.2 模块功能1、 游戏介绍包括游戏玩法里面内容介绍。2、 系统有五个模块,注册模块,新闻中心模块,游戏介绍模块,游戏图片模块,职业宝典模块,留言模块。2、新闻中心模块对官方游戏公告,以及最新新闻,包括活动公告,临时停机公告,维护公告。3、游戏介绍模块游戏的简介。4、职业宝典模块游戏中各个角色的介绍,职业技能介绍。5、留言模块注册用户可以经行留言。6、游戏图片
26、模块介绍游戏的图片4.2 数据库的设计4.2.1数据库设计创建任何一个数据库的第一步是仔细的规划数据库,设计必须是灵活的、有逻辑的。创建一个数据库结构的过程被认为是数据模型设计。精确地设计数据库是一件非常重要的事情,因为一旦有了应用以后,再更改数据库设计是一件非常花时间而且复杂的事情。第五章 网站测试5.1 建立数据库本系统的开发数据库使用的是mysqul具体的配置步骤如下:新建一个空数据库,取名为data。在data中建立表guestbook、user。如图4.1图 5.1 显示库中表1、guestbook表:记录留言内容。图 5.2 guestbook表设计视图图 5.3 guestboo
27、k表内容2、user表:记录注册会员信息。图 5.4 user表设计视图图 5.5 user表内容5.2 访问数据库的方法5.2.1数据库连接Bean创建一个简单的数据库连接Bean需要5个步骤:导入JDBC标准类库、注册数据库驱动程序、建立数据库连接、数据操作和关闭。5.2.2导入JDBC标准类库JDBC(Java DataBase Connectivity,Java数据库连接)是一种可用于执行SQL(Structured Qurey Language,结构化查询语句)语句的应用程序接口,为了将服务器从客户端接受的信息存入数据库,需要使用JDBC标准类库,所以需在此程序的开始加入以下impo
28、rt语句:import java.sql.*;5.2.3注册数据库驱动程序在一个JDBC的驱动程序被用来建立数据库连接之前,必须向数据库驱动程序管理器注册该驱动程序。管理器的主要职责是保证所有的驱动程序对象可被JDBC的用户程序访问。当一个JDBC驱动程序被载入时,它将自动地在驱动程序管理器上注册。可以调用Class. forName()方法来载入一个JDBC驱动程序:String sDBDriver = sun.jdbc.odbc.JdbcOdbcDriver;Class.forName(sDBDriver);Class. forName()是Java的Class类的静态方法,它将使Java
29、虚拟机动态地寻找、载入并连接指定的类。如果该类无法被找到,则该方法将抛出ClassNotFoundException类的异常。一个JDBC的驱动程序就是一个可以通过classpath找到的一个Java类。这里载入的JDBC_ODBC桥驱动程序就在sun.jdbc.odbc包中。5.2.4建立数据库连接载入一个正确的驱动程序后,就可以用它来建立与数据库的连接了。一个JDBC的数据库连接是用数据库URL来标记的。连接标记将告诉驱动程序管理器使用那个驱动程序和连接那个数据源。数据库URL的基本形式是:jdbc::URL的第一部分表示使用JDBC建立数据库连接。第2部分表示所用的JDBC驱动程序名或网
30、络协议名。第3部分是数据源标记,它映射所需要连接的数据库。本系统数据库的数据源标记是examination则同JDBC_ODBC桥连接该数据库所用的数据库URL为jdbc:odbc:examination。可以通过DriverManager类的静态方法getConnection()来建立一个数据库连接:String sConnStr = jdbc:odbc:examination;conn = DriverManager.getConnection(sConnStr);一旦建立数据库连接,就可以打该目标数据库,并通过该连接向目标数据库发送SQL指令。SQL指令通常会执行查询、插入、更新和删除等
31、数据库操作。要执行SQL指令,必须通过Connection对象的createStatement()方法创建一个stmt对象。Stmt对象提供了许多方法来执行不同的数据库操作。可以通过以下方法创建stmt对象:stmt = conn.createStatement();数据库操作5.3数据操作与数据库建立了连接,接着就要进行数据操作了。数据操作包括查询、插入、更新和删除等操作。查询数据要进行查询操作,可以使用stmt对象的executeQuery()方法。executeQuery()方法接受一个SQL指令字符串作为参数,返回含查询结果信息的ResultSet对象。具体如下:public Resu
32、ltSet executeQuery(String sql) rs = null; try conn = DriverManager.getConnection(sConnStr); /创建Connection对象 stmt = conn.createStatement();/建立数据库连接对象stmt rs = stmt.executeQuery(sql);/把查询结果赋给ResultSet对象rs catch(SQLException ex) System.err.println(aq.executeQuery: + ex.getMessage(); return rs; 插入、更新、删除
33、和查询数据对插入、更新和删除数据库等操作,可以使用executeUpdate()方法。而对数据库数据的查询操作,可以使用executeQuery()方法。具体如下:public void executeUpdate(String sql) stmt = null; rs=null; try conn = DriverManager.getConnection(sConnStr); /创建Connection对象 stmt = conn.createStatement();/建立数据库连接对象stmt stmt.executeQuery(sql);/执行查询数据的操作 stmt.close();
34、/对象关闭 conn.close();/关闭数据库连接 /异常处理 catch(SQLException ex) System.err.println(aq.executeQuery: + ex.getMessage(); 5.3.1关闭因为数据库连接是宝贵和有限的资源,因此必须在数据库操作完毕后及时释放数据库连接。Connection对象提供了一个简单的关闭数据库连接的方法close()方法,具体如下:closeStmt()方法 public void closeStmt() try stmt.close(); catch(SQLException e) e.printStackTrace(
35、); closeConn()方法 public void closeConn() try conn.close(); catch(SQLException e) e.printStackTrace(); 除此之外,还应关闭ResultSet对象(这一步将在JSP页面完成,rs对象的关闭方法是rs.close())。编写完上述代码后,要进行编译。在Dos模式下,进入路径,用javac进行编译。编译通过生成 data1.class 文件,把此文件存放在Tomcat 5.0 webapps ROOT WEB-INF classesdata1目录下。图 5.1 编译java文件编译后得到文件data1
36、.class,表示成功。5.3.2 配置ODBC数据源点击开始程序管理工具数据源(ODBC)进入系统DNS项图 5.2 在数据源管理器(ODBC)中创建数据源data,添加库data.mdb图 5.5 添加完成。5.4 主界面的实现与设计1.进入首页。如图图 5.6 游戏网站主页在主页面中可以进行会员的注册,新闻预览,游戏介绍,留言,游戏图片,职业宝典。5.5新闻中心模块的实现与设计新闻中心对官方游戏公告,以及最新新闻,包括活动公告,临时停机公告,维护公告。在主页面中点击 图 5.7图 5.8图 5.9 新闻中心5.6 游戏介绍模块的实现与设计游戏介绍模块:游戏的简介。在主页中点击。如图5.1
37、0图 5.10 游戏介绍5.6 游戏图片模块的实现与设计游戏图片模块:介绍游戏的图片点击图 5.11图 5.12图 5.13图 5.14图 5.15图 5.16 游戏图片5.7 职业宝典模块的实现与设计职业宝典模块:游戏中各个角色的介绍,职业技能介绍。点击图 5.17 图 5.18图 5.19 5.8 注册模块的实现与设计注册模块:可以经行会员注册。图 5.20图 5.21部分代码:游戏世界 魔兽世界魔兽世界(World of Warcraft)是由游戏公司暴雪娱乐所制作的第一款网络游戏,属于大型多人在线角色扮演游戏。游戏以该公司出品的即时战略游戏魔兽争霸的剧情为历史背景,依托魔兽争霸的历史事
38、件和英雄人物,玩家在魔兽世界中可以冒险、完成任务、新的历险、探索未知的世界、征服怪物等。魔兽世界设计了13个种族可供玩家进行选择,每个种族都各有自己鲜明的特色,玩家可以选择加入联盟或是部落两大阵营。魔兽世界于2004年在北美公开测试。截至2011年,魔兽世界在全球有1030万用户。2014年01月,全世界创建的账号总数已超过一亿,人物角色达到5亿。2016年1月14日,魔兽世界美服官网发布博文宣布魔兽7.0Alpha测试再度开启,并更新至Build 20914版本。2016年1月22日,魔兽7.0测试服中新增了一个20V20人的战场,名为“突袭暴风城”,该战场的最低要求为5V5。 英雄联盟英雄联盟(League of Legends)是美国Riot Games开发,腾讯游戏运营的全新英雄对战网游。由魔兽争霸系列游戏多人即时对战自定义地图(DOTA-Allstars)的开发团队,以及动视暴雪等著名游戏公司的美术、程序、策划人员组成。英雄联盟拥有特色的英雄、自动匹配的战网平台,包括a href=