基于UML的篮球赛门票网上订票系统设计与实现_第1页
基于UML的篮球赛门票网上订票系统设计与实现_第2页
基于UML的篮球赛门票网上订票系统设计与实现_第3页
基于UML的篮球赛门票网上订票系统设计与实现_第4页
基于UML的篮球赛门票网上订票系统设计与实现_第5页
已阅读5页,还剩38页未读 继续免费阅读

下载本文档

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

文档简介

PAGEV存档日期:存档编号:题目:基于UML的篮球赛门票网上订票系统的设计与实现学号:姓名:联系电话:电子邮箱:QQ:学院:专业:指导教师:

基于UML的篮球赛门票网上订票系统设计与实现摘要:近年来由于科技的进步,计算机,网络也都已经进入千家万户。而网上订购也成为了一种潮流,这意味着网络时代的来临。而同时随着越来越多的人喜欢看球赛,去现场买门票变得越来越不方便,所以篮球赛门票网上订票系统就这样应运而生了,该篮球赛门票网上订票系统内容充实,功能齐全,操作简单。基本由赛事资讯,球赛新闻和在线订票这三大功能组成。该篮球赛门票网上订票系统的实现方便了篮球爱好者的生活,还节省了人们的时间,真是一举两得。我的篮球赛门票网上订票系统是由SQLSERVER和JSP技术进行开发的。分为个人用户部分和管理员部分,分别为个人和管理员使用,主要管理各个模块的功能。关键词:UML;在线订票;JSP;SQLSERVERDesignandImplementationofBasketballTicketsOnlineBookingSystemBasedonUMLAbstract:Withthedevelopmentofscienceandtechnology,computersandnetworksarebasicallyuniversal,whiletheadventoftheInternetmeansthattheinformationage.Theonlineorderinghasbecomeatrend.Basketballticketsonlinebookingsystemcameintobeing,Andasmoreandmorepeopleliketowatchthegame,gotothesitebecomesmoreconvenienttobuyticketsandthebasketballticketsonlinebookingsysteminformative,full-featured,easytooperate.Essentiallyconsistsoftournamentinformation,gamenewsandonlinebookingofthesethreefunctionalcomponents.Basketballticketsonlinebookingsystemfacilitatethelifeofbasketballfans,butalsosavespeople'stime,reallyservetwopurposes.BasketballticketsonlinebookingsystemiscarriedoutbySQLSERVERandJSPtechnologydevelopment.Itisdividedintoindividualusersegmentandadministratorsparts,namely,personalandadministrators,keymanagementfunctionsofeachmodule.Keywords:UML;Onlinebooking;JSP;SQLSERVER;

目录第1章绪论 11.1课题的背景 11.2篮球赛门票网上订票系统的概述 11.3课题的目的 1第2章系统的分析 22.1可行性研究 22.1.1技术可行性 22.1.2经济可行性 22.2系统综合需求 22.2.1功能需求 22.2.2性能需求 22.3系统操作流程分析 32.4系统数据流图 42.5系统用例图 42.5.1用户模块用例图 42.5.2管理员模块用例图 5第3章系统设计 73.1总体设计 73.2JSP 7第4章系统使用说明 114.1系统前台操作说明 114.1.1首页界面 114.1.2在线留言页面 114.1.3用户注册页面 124.1.4在线订票页面 134.2系统后台操作 134.2.1管理员登陆页面 134.2.2系统用户添加页面 144.2.3赛事新闻添加页面 144.2.4票务信息添加页面 15第5章.软件测试与分析 165.1用户登录测试 165.2软件测试与分析 165.3系统测试的重要性 165.4系统的进一步测试 175.4.1常用的系统测试方法 175.4.2测试目的 175.5系统运行情况 17第6章:结论 186.1系统特点 186.2系统的不足以及所需完善 18毕业设计体会 19致谢 20英文翻译资料 21参考文献 30PAGE38第1章绪论1.1课题的背景在新的二十一世纪中,随着科学技术的日益进步,飞速发展的计算机技术,计算机网络已经基本普及,他正在改变了我们的生活。从政府到人民群众,从工业到农业,从教育到娱乐。这些使社会和经济得到了飞速的发展,不仅提高了生活质量而且提高了工作效率。利用现代的计算机管理信息系统,使工作和管理更加迅速和有效,提高管理水平和调高收益都有着不可忽视的作用。这让计算机对信息的管理这项系统得以实现,提高专业知识的综合实力,计算机编程,分析并解决问题的能力,审查和其余计算机语言都具有着重大意义。1.2篮球赛门票网上订票系统的概述(1)传统的订票系统不是很方便,非常浪费时间,而且操作非常繁琐,会影响看球的心情。(2)赛事信息第一时间更新,方便阅读。不管是NBA还是CBA,所有的赛事你都可以随时看到。(3)订票更加简单,足不出户却可以办到一切,支持支付宝在线支付功能,各大功能集中为一体,是你的不二之选。1.3课题的目的随着人们在网上购买商品逐渐频繁之后,网上订票也逐渐将取代传统的订票方式因为这种方式方便并改善人们的生活方式,同时在网络信息时代的大环境下,网络订购已经成为一种潮流和一种趋势。所以本系统就是指在予人方便,希望能够受到大家的认可。如果该系统能够被推广使用,我相信这将得到大家的喜爱。第2章系统的分析2.1可行性研究2.1.1技术可行性技术方面只需要懂得JAVA语言和会对软件进行配置。2.1.2经济可行性本系统开发所需花费很低,管理员的工作量很小,且只需要一位人员。2.2系统综合需求2.2.1功能需求该系统共分为七大模块,分别如下模块划分一、登陆模块:会员用户登陆二、球赛新闻管理模块:包括各个球赛的信。三、赛事资讯管理模块:包含最新的赛事资讯。四、票务信息管理模块:可以添加和修改票务信息。五、系统管理模块:包含系统简介,留言管理和数据备份。系统功能结构图如下2.1图2.1功能结构图2.2.2性能需求以下两项决定了系统的需求:(1)精度要求:对系统中所有功能以及其所需的精确程度进行确定。如数据或数据的传输精度,数值的精度计算。(2)界面友好:适应用户的特点,设计有智慧的人机互动接口,用户可以通过一个简单的培训来快速适应工。2.3系统操作流程分析该系统的整体工作流程是:首先我们先登陆进入系统的首页,之后映入我们眼帘的就是该系统的各个功能模块了,分别有球赛的及时信息,最新的赛事资讯,还有各大网站的链接。当你在线注册成为用户之后,你就可以进在线订票了,同时您还可以对你的个人信息进行修改,同时还可以自己选择图片更改头像,非常的人性化。本系统的流程图如下所示:图2.2系统流程图该系统只是一个初步设计,之后将进一步完善,旨在为了满足大部分喜欢看篮球赛的需求。本系统有如下几个特色:功能非常的齐全,你可以随时对您的信息就行修改,查询,添加。最新的赛事资讯也是一目了然。排版清晰,背景颜色清爽,让人浏览起来非常的舒服。在线订票功能非常的方便,并且可以在线支付。2.4系统数据流图从数据流图中我们可以看出该系统的大体结构,其主要分为两部分,如图2.3所示图2.3系统数据流图从该图中可以看出该系统非常合理,能够让人们一看就初步了解该系统。2.5系统用例图2.5.1用户模块用例图用例图是将系统简单的用图将各大功能向不懂的人展示,其中包含着各个用例之间的关系其大致的功能如图2.4所示:图2.4用户模块用例图2.5.2管理员模块用例图管理员可以对下面几项功能进行管理:管理员有着最高的权限,注册用户的所有操作都需要管理员的确认才生效,如在线注册需要管理员后台确定,在线订票也需要管理员后台确定。图2.5管理员用例图本章是毕业设计制作之前一个初步分析,当有了初步框架之后我们就可以进行接下来的制作工作了。第3章系统设计3.1总体设计本章节对系统网上订票系统采用人们更加倾向的B/S结构,其具有良好的系统扩展性,方便管理。3.2JSPJSP是由Sun微系统公司,一个动态网页技术标准发起,与一些参与公司创立起来。HTML放置到Java的程序段中(脚本-LET)和JSP标签,形成一个JSP文件。JSP是JavaServerPages的缩写这是一个简单的设计。JSP是在服务器上进行工作的,但通常会生成一个HTML文本并返回到客户端上。块的Web服务器,在请求第一实施访问JSP页面,然后用HTML代码JSP文件的执行结果,返回给客户端。JSP技术就是通过对JAVA进行使用来编写XML,该网站还可以应用逻辑资源和脚本代码可以访问服务端。JavaServlet,JSP的技术基础,规模化发展的需要和JavaServlet和JSP的Web应用程序来完成。3.2.1IIS管理器IIS作为一个安全,稳定的Internet网站,他可以支持微软BackOffice对于微软系统管理服务器的分布式系统的集中管理;3.2.2SQLSERVER数据库是数据库应用中非常重要,并且必不可少的一部分,他的设计功能完善这样不仅可以提高开发的效率而且对程序的性能也有着必不可少的作用。因为数据库的影响深远,不仅为系统设计人员带来巨大影响,也可能会导致未来的应用程序形成损坏和危害,系统采用SQL数据库server5.0。数据库后台管理信息系统存储的所有信息都在信息管理系统中一个非常重要的角色。与其他关系数据库管理系统SQL服务器相比,具有以下优点:单存储文件。可以处理各种数据,如文本文件和数据库文件。该系统的设计与开发通俗易懂,改起来也非常的简单。3.2.3MyEclipseMyEclipse,是一种很好的Java开发,应用范围很广,尤其是支持各种开源产品是非常好的。3.2.4用户类图要想画类图首先就要对自己的系统有哪写类,他们的状态又是什么和静态结构又是什么。做好这些辅助工作,画起来就不是那么困难了。下面是注册用户的类图3.1图3.1用户类图3.2.5管理员类图有用户类图就一定有管理员类图,他们是肯定同时存在的,管理员类图比用户类图更加复杂,所以画之前一定要了解清楚下面是管理员的类图:3.2图3.2管理员类图图3.3账户的类图3.2.6数据库逻辑结构设计首先我们需要知道表的各项属性和数据,并知道需要有哪些表,他们的功能是什么,我大致的列了出来,如下面图3.1,3.2,3.3所示:表3.1allusers表表3.2youqinglianjie表表3.3liuyanban表第4章系统使用说明网站结构分为两个部分:前台登入模块、后台管理模块。4.1系统前台操作说明4.1.1首页界面该首页看上去非常的清爽,简洁,清晰,令人觉得非常舒服。正上方是该系统的各个功能栏目,下方是各大赛事的最新资讯,功能非常的完整。如图4.1所示图4.1界面图4.1.2在线留言页面该部分是本系统的特色,在这里用户可以和管理员直接交流,不仅可以提意见,而且还可以与其他用户一起聊天,同时还支持头像选择,非常人性化。你一定会喜欢的。如图下4.2所示:图4.2留言图4.1.3用户注册页面用户注册就稍微简单多了,跟许多系统一样,里面需要填写你的各项信息和联系方式,以便以后更好的交流。如下图4.3所示:图4.3用户注册页面图4.1.4在线订票页面该页面显示的是该系统的核心功能,在线订票,你可以根据喜爱选择想要观看的比赛,选择观看的位置和需要的订票数。图4.4在线订票页面图4.2系统后台操作4.2.1管理员登陆页面管理员界面就是系统的后台,账号和密码非常有保密性,如果被盗取后果将无法挽回。该页面不需要多么的华丽,只需要实现所欲要的功能就行了。如下图4.5所示:图4.5管理员登录图4.2.2系统用户添加页面该页面只有管理员登陆进入才可以看见,在这里可以对整个系统进行修改,内容有:订票信息,用户信息,新闻管理信息等修改。如下图4.6所示:图4.6用户添加图4.2.3赛事新闻添加页面当然新闻肯定是必须定期更新的,管理员每2小时就会对该功能进行修改或者更新,以确保新闻的时效。如下图4.7所示:图4.7赛事新闻添加图4.2.4票务信息添加页面该页面也是需要随时更新的,只要一有新的比赛管理员就必须要进行修改。如下图4.8所示:图4.8票务信息添加图第5章软件测试与分析5.1用户登录测试登陆测试其实很简单,就是输入各项数据,看是否会出错,如果正确就表明应该是没有问题的了,如果错误的话,那我们就要认真的查出错误,并克服它了。多次测试如表5.1,5.2所示:表5.1正确的用户登录表5.2错误的用户登录5.2软件测试与分析软件测试关键就在于要要对系统做进一步的检查和完善,该测试必不可少的环节,他对软件起着最终决定作用。如果没有这个操作,系统就是不完整的。5.3系统测试的重要性软件测试传统的,该校正在运行仅维持阶段是保证交付给用户,软件质量的软件。。无论在哪个工程学科,测试都是重要的基础性工作,在整个软件的开发中起着关键性的作用。在以往的研究中证明了,程序的测试工作在程序项目中都几乎占到工作量的四成。而在成本方面,测试工作往往占到了总成本的15%到25%。当然如果考虑花费的话,就整个软件的生命周期而言,虽然测试工作的花费越来越少,但是测试的工作其实就是软件的二次开发,因为他必须测试非常多的次数。5.4系统的进一步测试5.4.1常用的系统测试方法测试方法大同小异,最普遍的是黑盒和白盒。通俗的来讲就是一个考虑内部结构,一个不考虑内部结构。白盒是根据功能一个一个的检测,主要证明是否能够没有错误的运行,而黑盒其实是对内部结构不给予考虑的,他用来发现错误和系统需要改进的地方。5.4.2测试目的通过测试达到以下四个目的:1.程序的内容检测。检测程序内容是否存在疏漏,是否真正可用等。2.程序的接触检测。检测程序的接口是否输入输出数据的正确性和可用性。3.程序的信息检测。检测输送的信息结构是否合理,外部资源访问时是否会出现BUG。4.程序的效率检测。检测程序处理数据的效率是否能满足要求。5.5系统运行情况是指当新的程序运行了一段时间,将开始在功能、技术、效率等方面对程序进行综合评测。本程序的评测情况有:(1)程序的功能水平该程序的功能符合用户的需求,达到了开发的预定计划要求,程序的测试全面到位。(2)程序的技术要求该程序技术上设计符合要求,达到预期的目标,程序稳定运行、安全性和扩展性都很好,能提高业务的效率。(3)程序的经济效率程序达到了设计的要求,整个开发工作按时完成,在实际运行中,大大提高了用户的工作效率,为用户在人力物力财力方面达到节省和提速的目标,从而使管理水平进一步提高。第6章:结论毕业设计是我们通过大学四年所学的知识,在老师的耐心指导下,所制作出来的知识成果,我对我的毕业设计有如下总结:6.1系统特点篮球赛门票网上预订系统是我们通过JSP和SQL模型定制一个小平台。功能方面,更完整。Web界面与用户交互系统。本系统功能齐全,界面简洁。6.2系统的不足以及所需完善该系统大致上满足了初定的所需要求,界面清爽,并没有严重的误差和错误。但是在某些功能还可以进一步的完善目前,该程序的优化工作才处于初始阶段,离真正的理想状态还有很长的一段距离。如果程序的后台数据库效率不够高,则程序都将受到影响。通过简化代码,这样可以共享在许多不同的接口,使程序的速度得到提升。毕业设计体会时间在不经意间已经悄悄溜走了,很快我们就要顺利毕业,走上社会迎接更大的挑战。在最后做毕业设计的这段时间里面,我非常的努力,每天我都要去查找大量的书籍,为了就是能够将我选择的课题做到最好。在这期间我明白了许多道理,要想成功光靠个人是远远不够的,还需要培养团队合作精神。该毕业设计算是顺利完成了,但是我知道这不是我一个的功劳,他是我和同学还有老师共同努力的才换来的。回想刚开始拿到这个毕业选题的时候我非常的迷茫,不仅缺乏大量的理论知识而且也没有明确的思路。但是这个时候我没有放弃,心里想着如何把问题一步一步的解决了。通过对书籍的翻阅和向老师的请教,我对如何完成这个系统有了大致的思路和框架。经过自己的努力和老师的指导我终于完成了毕业设计的初稿,但同时更多的问题又产生了,页面如何优化啊,系统功能如何进一步完善改进啊。但是我也已经不是刚拿到毕业设计而手足无措的黄毛小子了,我相信只要努力,肯虚心请教,没有什么是完成不了的。最终我顺利的完成了我满意的系统。经历了毕业设计制作这段时间的种种,我明白了许多道理,没有完成不了的事情,只有不努力的人。只要我们学会与人交流,合作,再添上自己的努力和执着,任何问题都将迎刃而解。在以后的工作阶段,我将保持这种精神,我相信我的未来将一片美好。致谢大学生活即将圆满的结束了。但是对于我来说这才刚刚开始,我已经准备好面临接下来的挑战。在最近几个月的毕业设计制作过程中,我最想感谢的就是我的指导老师——祝老师,如果没有他的帮助我是不可能独立完成这个系统,尤其是毕业论文。他对我不仅有理论知识的帮助,更关键的是精神层面上的帮助和支持。祝老师是一个尽职尽责的老师,当我有关键技术上的问题需要让他帮助我时,他都一字一句的为我讲解指导。当我为了系统上的错误而困扰时,老师都不断的开导我让我不要放弃,并与我共同探讨问题,终于使我的系统得到了进一步完善和优化。就这样我最终完成了我的毕业论文和毕业设计。当然了同学们也给了我许多帮助,在这美丽的四年大学生活中我们有竞争,有互助,有共同的美好回忆。在我遇到困难时,你们都是那么的热情并给予我帮助,在此我也要对你们表达深深的谢意。同时我还要感谢在座的各位答辩老师,老师们认真负责的态度值得我们尊敬。最后一定要感谢在这大学四年中所有对我帮助过的老师,是这些可爱的人们让我学到了更多知识,更多做人的道理,这对我完成毕业设计和以后的发展都将有着深远的影响。参考文献[1]曹衍龙.徐慧.JSP网络开发实用工程案例[M].人民邮电出版社2008.[2]汪大乐.JavaWeb开发技术详解[M].北京科海电子出版社2008.[3]曾光.马军.JavaScript入门与提高[M].科学出版社2008.[4]王国辉等.JavaWeb开发实战宝典[M].清华大学出版社.2010.1.[5]梁文新.宋强.王占中.Ajax+JSP网站开发从入门到精通[M].清华大学出版社.2008.7.[6]张红.利用JavaServlet实现在Web服务器平台上的开发.[J].桂林电子科技大学学报.2009.29(3).[7]黄勇.基于JSP的电子商务系统中关键技术研究[J],商场现代化,2008.1(528):133~134.[8]MartyHall,LarryBrown著.Servlet与JSP核心编程(第2版)[M]:北京.清华大学出版社.[9]ChristineCanningEsposito.Thebusinessofrestoringacar’sbeauty.[J].CoatingsWorld.2002.7(9).[10]DavidFlanagan.JavaScript:TheDefinitiveGuide[M].O'ReillyMedia,Inc.2006.英文翻译资料JavaandtheInternetIf

Java

is,

in

fact,

yet

another

computer

programming

language,

you

may

question

why

it

is

so

important

and

why

it

is

being

promoted

as

a

revolutionary

step

in

computer

programming.

The

answer

isn’t

immediately

obvious

if

you’re

coming

from

a

traditional

programming

perspective.

Although

Java

is

very

useful

for

solving

traditional

stand-alone

programming

problems,

it

is

also

important

because

it

will

solve

programming

problems

on

the

World

Wide

Web.1.

Client-side

programming

The

Web’s

initial

server-browser

design

provided

for

interactive

content,

but

the

interactivity

was

completely

provided

by

the

server.

The

server

produced

static

pages

for

the

client

browser,

which

would

simply

interpret

and

display

them.

Basic

HTML

contains

simple

mechanisms

for

data

gathering:

text-entry

boxes,

check

boxes,

radio

boxes,

lists

and

drop-down

lists,

as

well

as

a

button

that

can

only

be

programmed

to

reset

the

data

on

the

form

or

“submit”

the

data

on

the

form

back

to

the

server.

This

submission

passes

through

the

Common

Gateway

Interface

(CGI)

provided

on

all

Web

servers.

The

text

within

the

submission

tells

CGI

what

to

do

with

it.

The

most

common

action

is

to

run

a

program

located

on

the

server

in

a

directory

that’s

typically

called

“cgi-bin.”

(If

you

watch

the

address

window

at

the

top

of

your

browser

when

you

push

a

button

on

a

Web

page,

you

can

sometimes

see

“cgi-bin”

within

all

the

gobbledygook

there.)

These

programs

can

be

written

in

most

languages.

Perl

is

a

common

choice

because

it

is

designed

for

text

manipulation

and

is

interpreted,

so

it

can

be

installed

on

any

server

regardless

of

processor

or

operating

system.

Many

powerful

Web

sites

today

are

built

strictly

on

CGI,

and

you

can

in

fact

do

nearly

anything

with

it.

However,

Web

sites

built

on

CGI

programs

can

rapidly

become

overly

complicated

to

maintain,

and

there

is

also

the

problem

of

response

time.

The

response

of

a

CGI

program

depends

on

how

much

data

must

be

sent,

as

well

as

the

load

on

both

the

server

and

the

Internet.

(On

top

of

this,

starting

a

CGI

program

tends

to

be

slow.)

The

initial

designers

of

the

Web

did

not

foresee

how

rapidly

this

bandwidth

would

be

exhausted

for

the

kinds

of

applications

people

developed.

For

example,

any

sort

of

dynamic

graphing

is

nearly

impossible

to

perform

with

consistency

because

a

GIF

file

must

be

created

and

moved

from

the

server

to

the

client

for

each

version

of

the

graph.

And

you’ve

no

doubt

had

direct

experience

with

something

as

simple

as

validating

the

data

on

an

input

form.

You

press

the

submit

button

on

a

page;

the

data

is

shipped

back

to

the

server;

the

server

starts

a

CGI

program

that

discovers

an

error,

formats

an

HTML

page

informing

you

of

the

error,

and

then

sends

the

page

back

to

you;

you

must

then

back

up

a

page

and

try

again.

Not

only

is

this

slow,

it’s

inelegant.The

solution

is

client-side

programming.

Most

machines

that

run

Web

browsers

are

powerful

engines

capable

of

doing

vast

work,

and

with

the

original

static

HTML

approach

they

are

sitting

there,

just

idly

waiting

for

the

server

to

dish

up

the

next

page.

Client-side

programming

means

that

the

Web

browser

is

harnessed

to

do

whatever

work

it

can,

and

the

result

for

the

user

is

a

much

speedier

and

more

interactive

experience

at

your

Web

site.

The

problem

with

discussions

of

client-side

programming

is

that

they

aren’t

very

different

from

discussions

of

programming

in

general.

The

parameters

are

almost

the

same,

but

the

platform

is

different:

a

Web

browser

is

like

a

limited

operating

system.

In

the

end,

you

must

still

program,

and

this

accounts

for

the

dizzying

array

of

problems

and

solutions

produced

by

client-side

programming.

The

rest

of

this

section

provides

an

overview

of

the

issues

and

approaches

in

client-side

programming.

2.Plug-ins

One

of

the

most

significant

steps

forward

in

client-side

programming

is

the

development

of

the

plug-in.

This

is

a

way

for

a

programmer

to

add

new

functionality

to

the

browser

by

downloading

a

piece

of

code

that

plugs

itself

into

the

appropriate

spot

in

the

browser.

It

tells

the

browser

“from

now

on

you

canperform

this

new

activity.”

(You

need

to

download

the

plug-in

only

once.)

Some

fast

and

powerful

behavior

is

added

to

browsers

via

plug-ins,

but

writing

a

plug-in

is

not

a

trivial

task,

and

isn’t

something

you’d

want

to

do

as

part

of

the

process

of

building

a

particular

site.

The

value

of

the

plug-in

for

client-side

programming

is

that

it

allows

an

expert

programmer

to

develop

a

new

language

and

add

that

language

to

a

browser

without

the

permission

of

the

browser

manufacturer.

Thus,

plug-ins

provide

a

“back

door”

that

allows

the

creation

of

new

client-side

programming

languages

(although

not

all

languages

are

implemented

as

plug-ins).

3.Scripting

languages

Plug-ins

resulted

in

an

explosion

of

scripting

languages.

With

a

scripting

language

you

embed

the

source

code

for

your

client-side

program

directly

into

the

HTML

page,

and

the

plug-in

that

interprets

that

language

is

automatically

activated

while

the

HTML

page

is

being

displayed.

Scripting

languages

tend

to

be

reasonably

easy

to

understand

and,

because

they

are

simply

text

that

is

part

of

an

HTML

page,

they

load

very

quickly

as

part

of

the

single

server

hit

required

to

procure

that

page.

The

trade-off

is

that

your

code

is

exposed

for

everyone

to

see

(and

steal).

Generally,

however,

you

aren’t

doing

amazingly

sophisticated

things

with

scripting

languages

so

this

is

not

too

much

of

a

hardship.

This

points

out

that

the

scripting

languages

used

inside

Web

browsers

are

really

intended

to

solve

specific

types

of

problems,

primarily

the

creation

of

richer

and

more

interactive

graphical

user

interfaces

(GUIs).

However,

a

scripting

language

might

solve

80

percent

of

the

problems

encountered

in

client-side

programming.

Your

problems

might

very

well

fit

completely

within

that

80

percent,

and

since

scripting

languages

can

allow

easier

and

faster

development,

you

should

probably

consider

a

scripting

language

before

looking

at

a

more

involved

solution

such

as

Java

or

ActiveX

programming.

The

most

commonly

discussed

browser

scripting

languages

are

JavaScript

(which

has

nothing

to

do

with

Java;

it’s

named

that

way

just

to

grab

some

of

Java’s

marketing

momentum),

VBScript

(which

looks

like

Visual

Basic),

andTcl/Tk,

which

comes

from

the

popular

cross-platform

GUI-building

language.

There

are

others

out

there,

and

no

doubt

more

in

development.

JavaScript

is

probably

the

most

commonly

supported.

It

comes

built

into

both

Netscape

Navigator

and

the

Microsoft

Internet

Explorer

(IE).

In

addition,

there

are

probably

more

JavaScript

books

available

than

there

are

for

the

other

browser

languages,

and

some

tools

automatically

create

pages

using

JavaScript.

However,

if

you’re

already

fluent

in

Visual

Basic

or

Tcl/Tk,

you’ll

be

more

productive

using

those

scripting

languages

rather

than

learning

a

new

one.

(You’ll

have

your

hands

full

dealing

with

the

Web

issues

already.)

4.Java

If

a

scripting

language

can

solve

80

percent

of

the

client-side

programming

problems,

what

about

the

other

20

percent—the

“really

hard

stuff?”

The

most

popular

solution

today

is

Java.

Not

only

is

it

a

powerful

programming

language

built

to

be

secure,

cross-platform,

and

international,

but

Java

is

being

continually

extended

to

provide

language

features

and

libraries

that

elegantly

handle

problems

that

are

difficult

in

traditional

programming

languages,

such

as

multithreading,

database

access,

network

programming,

and

distributed

computing.

Java

allows

client-side

programming

via

the

applet.

An

applet

is

a

mini-program

that

will

run

only

under

a

Web

browser.

The

applet

is

downloaded

automatically

as

part

of

a

Web

page

(just

as,

for

example,

a

graphic

is

automatically

downloaded).

When

the

applet

is

activated

it

executes

a

program.

This

is

part

of

its

beauty—it

provides

you

with

a

way

to

automatically

distribute

the

client

software

from

the

server

at

the

time

the

user

needs

the

client

software,

and

no

sooner.

The

user

gets

the

latest

version

of

the

client

software

without

fail

and

without

difficult

reinstallation.

Because

of

the

way

Java

is

designed,

the

programmer

needs

to

create

only

a

single

program,

and

that

program

automatically

works

with

all

computers

that

have

browsers

with

built-in

Java

interpreters.

(This

safely

includes

the

vast

majority

of

machines.)

Since

Java

is

a

full-fledged

programming

language,

you

can

do

as

much

work

as

possible

on

the

client

before

and

after

making

requests

of

theserver.

For

example,

you

won’t

need

to

send

a

request

form

across

the

Internet

to

discover

that

you’ve

gotten

a

date

or

some

other

parameter

wrong,

and

your

client

computer

can

quickly

do

the

work

of

plotting

data

instead

of

waiting

for

the

server

to

make

a

plot

and

ship

a

graphic

image

back

to

you.

Not

only

do

you

get

the

immediate

win

of

speed

and

responsiveness,

but

the

general

network

traffic

and

load

on

servers

can

be

reduced,

preventing

the

entire

Internet

from

slowing

down.

One

advantage

a

Java

applet

has

over

a

scripted

program

is

that

it’s

in

compiled

form,

so

the

source

code

isn’t

available

to

the

client.

On

the

other

hand,

a

Java

applet

can

be

decompiled

without

too

much

trouble,

but

hiding

your

code

is

often

not

an

important

issue.

Two

other

factors

can

be

important.

As

you

will

see

later

in

this

book,

a

compiled

Java

applet

can

comprise

many

modules

and

take

multiple

server

“hits”

(accesses)

to

download.

(In

Java

1.1

and

higher

this

is

minimized

by

Java

archives,

called

JAR

files,

that

allow

all

the

required

modules

to

be

packaged

together

and

compressed

for

a

single

download.)

A

scripted

program

will

just

be

integrated

into

the

Web

page

as

part

of

its

text

(and

will

generally

be

smaller

and

reduce

server

hits).

This

could

be

important

to

the

responsiveness

of

your

Web

site.

Another

factor

is

the

all-important

learning

curve.

Regardless

of

what

you’ve

heard,

Java

is

not

a

trivial

language

to

learn.

If

you’re

a

Visual

Basic

programmer,

moving

to

VBScript

will

be

your

fastest

solution,

and

since

it

will

probably

solve

most

typical

client/server

problems

you

might

be

hard

pressed

to

justify

learning

Java.

If

you’re

experienced

with

a

scripting

language

you

will

certainly

benefit

from

looking

at

JavaScript

or

VBScript

before

committing

to

Java,

since

they

might

fit

your

needs

handily

and

you’ll

be

more

productive

sooner.to

run

its

applets

withi

5.ActiveX

To

some

degree,

the

competitor

to

Java

is

Microsoft’s

ActiveX,

although

it

takes

a

completely

different

approach.

ActiveX

was

originally

a

Windows-only

solution,

although

it

is

now

being

developed

via

an

independent

consortium

to

become

cross-platform.

Effectively,

ActiveX

says

“if

your

program

connects

to

its

environment

just

so,

it

can

be

dropped

into

a

Web

page

and

run

under

a

browser

that

supports

ActiveX.”

(IE

directly

supports

ActiveX

and

Netscape

does

so

using

a

plug-in.)

Thus,

ActiveX

does

not

constrain

you

to

a

particular

language.

If,

for

example,

you’re

already

an

experienced

Windows

programmer

using

a

language

such

as

C++,

Visual

Basic,

or

Borland’s

Delphi,

you

can

create

ActiveX

components

with

almost

no

changes

to

your

programming

knowledge.

ActiveX

also

provides

a

path

for

the

use

of

legacy

code

in

your

Web

pages.

6.Security

Automatically

downloading

and

running

programs

across

the

Internet

can

sound

like

a

virus-builder’s

dream.

ActiveX

especially

brings

up

the

thorny

issue

of

security

in

client-side

programming.

If

you

click

on

a

Web

site,

you

might

automatically

download

any

number

of

things

along

with

the

HTML

page:

GIF

files,

script

code,

compiled

Java

code,

and

ActiveX

components.

Some

of

these

are

benign;

GIF

files

can’t

do

any

harm,

and

scripting

languages

are

generally

limited

in

what

they

can

do.

Java

was

also

designed

to

run

its

applets

within

a

“sandbox”

of

safety,

which

prevents

it

from

writing

to

disk

or

accessing

memory

outside

the

sandbox.

ActiveX

is

at

the

opposite

end

of

the

spectrum.

Programming

with

ActiveX

is

like

programming

Windows—you

can

do

anything

you

want.

So

if

you

click

on

a

page

that

downloads

an

ActiveX

component,

that

component

might

cause

damage

to

the

files

on

your

disk.

Of

course,

programs

that

you

load

onto

your

computer

that

are

not

restricted

to

running

inside

a

Web

browser

can

do

the

same

thing.

Viruses

downloaded

from

Bulletin-Board

Systems

(BBSs)

have

long

been

a

problem,

but

the

speed

of

the

Internet

amplifies

the

difficulty.

The

solution

seems

to

be

“digital

signatures,”

whereby

code

is

verified

to

show

who

the

author

is.

This

is

based

on

the

idea

that

a

virus

works

because

its

creator

can

be

anonymous,

so

if

you

remove

the

anonymity

individuals

will

be

forced

to

be

responsible

for

their

actions.

This

seems

like

a

good

plan

because

it

allows

programs

to

be

much

more

functional,

and

I

suspect

it

will

eliminate

malicious

mischief.

If,

however,

a

program

has

an

unintentional

destructive

bug

it

will

still

cause

problems.

The

Java

approach

is

to

prevent

these

problems

from

occurring,

via

the

sandbox.

The

Java

interpreter

that

lives

on

your

local

Web

browser

examines

the

applet

for

any

untoward

instructions

as

the

applet

is

being

loaded.

In

particular,

the

applet

cannot

write

files

to

disk

or

erase

files

(one

of

the

mainstays

of

viruses).

Applets

are

generally

considered

to

be

safe,

and

since

this

is

essential

for

reliable

client/server

systems,

any

bugs

in

the

Java

language

that

allow

viruses

are

rapidly

repaired.

(It’s

worth

noting

that

the

browser

software

actually

enforces

these

security

restrictions,

and

some

browsers

allow

you

to

select

different

security

levels

to

provide

varying

degrees

of

access

to

your

system.)

You

might

be

skeptical

of

this

rather

draconian

restriction

against

writing

files

to

your

local

disk.

For

example,

you

may

want

to

build

a

local

database

or

save

data

for

later

use

offline.

The

initial

vision

seemed

to

be

that

eventually

everyone

would

get

online

to

do

anything

important,

but

that

was

soon

seen

to

be

impractical

(although

low-cost

“Internet

appliances”

might

someday

satisfy

the

needs

of

a

significant

segment

of

users).

The

solution

is

the

“signed

applet”

that

uses

public-key

encryption

to

verify

that

an

applet

does

indeed

come

from

where

it

claims

it

does.

A

signed

applet

can

still

trash

your

disk,

but

the

theory

is

that

since

you

can

now

hold

the

applet

creator

accountable

they

won’t

do

vicious

things.

Java

provides

a

framework

for

digital

signatures

so

that

you

will

eventually

be

able

to

allow

an

applet

to

step

outside

the

sandbox

if

necessary.

Digital

signatures

have

missed

an

important

issue,

which

is

the

speed

that

people

move

around

on

the

Internet.

If

you

download

a

buggy

program

and

it

does

something

untoward,

how

long

will

it

be

before

you

discover

the

damage?

It

could

be

days

or

even

weeks.

By

then,

how

will

you

track

down

the

program

that’s

done

it?

And

what

good

will

it

do

you

at

that

point?

7.Internet

vs.

intranet

The

Web

is

the

most

general

solution

to

the

client/server

problem,

so

it

makes

sense

that

you

can

use

the

same

technology

to

solve

a

subset

of

the

problem,

in

particular

the

classic

client/server

problem

within

a

company.

With

traditionalclient/server

approaches

you

have

the

problem

of

multiple

types

of

client

computers,

as

well

as

the

difficulty

of

installing

new

client

software,

both

of

which

are

handily

solved

with

Web

browsers

and

client-side

programming.

When

Web

technology

is

used

for

an

information

network

that

is

restricted

to

a

particular

company,

it

is

referred

to

as

an

intranet.

Intranets

provide

much

greater

security

than

the

Internet,

since

you

can

physically

control

access

to

the

servers

within

your

company.

In

terms

of

training,

it

seems

that

once

people

understand

the

general

concept

of

a

bro

温馨提示

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

评论

0/150

提交评论