- Java Web开发基础与案例教程
- 吴艳 刘丽华
- 3802字
- 2025-02-18 04:56:44
1.2 Web基础知识
Web的原意是“蜘蛛网”和“网”的意思,现在应用在网络中通常被译作“网络”“互联网”“网页”等。具体地讲,Web可以称为全球信息网,是互联网上使用最为广泛的信息浏览和发布方式。Web主要采用超链接技术,浏览器/服务器工作模式,使用URL标识网上资源。
Web服务器也称为HTTP服务器,它是根据用户通过Web浏览器发送的请求来提供相应文件的一种软件。常用的Web服务器包括ApacheHTTP服务器、Netscape的企业服务器(NES)。iPlanetWeb服务器和微软的(Internet Information Services,IIS)等。
1.Web的基本概念
Web诞生于瑞士日内瓦的欧洲粒子物理实验室(CERN)——该实验室专门从事复杂物理学、工程学和信息处理工程学的研究。该实验室的人员由分布在世界各地的科学家组成,为了便于研究人员之间的相互联系和沟通,就需要采用一种能够及时传输信息和研究资料的方法。因此,在1989年,CERN的物理学家TimBerners-Lee首次提出了链接文档的概念,并且实现了第一个基于文本的Web原型,为科学家们提供了一种有效的通信方法。在1990年,万维网(World Wide Web)名称被正式确定。在1993年,美国国家超级计算应用中心成功的研发了世界上第一个图形界面的浏览器——Mosaic。后来,Marc Andreessen创办了Netscape通信公司,成功开发了著名的NetscapeNavigator浏览器软件。在1997年,微软公司的网络浏览软件Internet Explorer 4.0问世。随后,由于浏览器的便利使得Web得到了较为广泛的应用,Web上的资源越来越多,逐步融入人们的生活,成为人们工作、生活、学习的基本工具。
2.Web的工作机制
Web是通过HTTP传输信息的,用户上网浏览网页时,首先通过浏览器向对方的Web服务器发送一个请求,接着Web服务器接收到该请求以后就会检索相应的页面;一旦检索到目标页面,Web服务器将会向客户端浏览器回送该页面。具体地讲,在一次通信过程中从用户发出请求,到服务器端响应请求,大致可以分为9个步骤。
1)在浏览器的地址栏中输入请求页面的URL(发起用户请求)。
2)浏览器请求DNS域名系统,把域名解析为IP地址。
3)根据解析出来的IP地址,浏览器与服务器建立连接。
4)浏览器发出HTTP请求报文。
5)Web服务器响应请求,找到software目录下index.html文件。
6)如果HTML页面中嵌入了JSP、ASP、ASP.NET或PHP程序,则Web服务器运行这些程序,并把结果嵌入页面。如果应用程序包含有对数据库的操作,则应用程序服务器把查询指令发送给数据库驱动程序,由数据库驱动程序对数据库执行查询操作,查询结果返回给数据库驱动程序,并由驱动程序返回Web服务器,Web服务器将结果数据嵌入页面。
7)Web服务器把结果页面发送给浏览器。
8)浏览器与服务器断开连接。
9)浏览器解释HTML文档,在客户端屏幕上显示结果。
1.2.1 网页技术简介
Web的开发需要使用HTML、CSS、XML以及脚本等技术。下面分别对常用的几种技术做以简单介绍:
1.超文本标记语言
超文本标记语言(HyperText Mark up Language,HTML)是Web技术的基础,它是一种文本形式的标记符号语言,可以使用任何文字处理软件进行编辑处理。目前市面上已经有很多种工具可以完成可视化的编程任务,例如DreamWeaver等。
2.层叠样式表
层叠样式表(Cascading Style Sheet,CSS)主要用来控制页面显示的风格。在HTML基础上,使用CSS不但能够统一、高效地组织页面上的元素,而且还可以使页面的外观具有多样化。
3.可扩展标记语言
可扩展标记语言(Extensible Mark up Language)是一种可以用来定义其他语言的语言。它是标准通用标记语言(Standard Generalized Markup Language,SGML)的一个简化的子集,专门为Web环境而设计的。XML的基本思想是:分别定义内容与内容的显示方式,这样对于内容组织者来说就可以将精力主要集中于内容本身而不必关心内容将如何显示。
4.脚本
脚本(Script)包括JavaScript和VBScript。JavaScript是Sun公司和Netscape公司开发的一种解释型脚本语言,不需要编译。它比Java更简单有效,且具有Java的多种特性。JavaS-cript必须嵌入到HTML文档中,随同页面被下载到客户端,由浏览器解释执行。VBScript是由Microsoft公司推出的Web页面编程语言,也属于脚本语言,它继承了很多VB的语言特征。VBScript同JavaScript一样,也必须嵌入到HTML文档中,随同页面下载到客户端,由浏览器解释执行。此外,VBScript还可以和ActiveX控件集成,用于开发交互式页面,同时也可以进行服务器端的编程。
1.2.2 开发技术简介
Web项目的开发有很多的开发技术可以使用,主要包括JSP、ASP、PHP等,下面简要对这3种常用开发技术做以比较。
1.JSP
JSP(Java Server Pages,Java服务器页面)是由Sun公司于1999年推出的一种动态网页技术标准。网站开发人员在使用Servlet进行Web应用开发时,需要在Java代码中使用输出语句输出HTML内容。当用户需要对页面风格、内容进行修改时,就需要进行代码修改并且需要进行重新编译与部署。这样一来就会导致维护的工作量急剧上升,因此,Sun以及Jakarta组织综合了Servlet以及其他网页技术如ASP和PHP等的精华,推出了JSP(Java Server Pages)。和ASP和PHP类似,JSP也采用静态HTML和动态的Java语言混合编码的方式,它使得Web开发人员和网页设计人员能够快速地开发和发布Internet网络应用。
JSP技术具有如下优点。
(1)跨平台性
作为Java平台的一部分,JSP技术拥有Java语言“一次编写,各处执行”的特点,能够在各种操作系统平台上运行。而且由于Sun公司将Java公开成为一种开放的标准,随着越来越多的应用服务器供应商将JSP技术添加到他们的产品中,使得使用JSP(或J2EE)技术开发的企业应用可以在不同的应用服务器上得到相同的运行结果。因此,企业可以针对自身的需求,选择符合公司成本及规模的服务器,假若未来的需求有所变更时,更换服务器平台并不影响之前所投的成本、人力以及所开发的应用程序。
(2)组件化开发
JSP可以依赖重复使用跨平台的组件(如:JavaBean或EJB组件)来执行复杂的运算、数据处理等。因此开发人员能够共享开发完成的组件,或者增强现有组件的功能。基于利用组件进行开发的方法,可以加速整理开发过程,大大降低了公司的开发成本。
(3)自定义标签网页开发
在实际网站开发中,由于网页开发人员不一定都是熟悉Java语言的程序员,因此,JSP使用标签库技术将多种功能封装起来,成为一个自定义的标签。网页开发人员运用自定义的标签来完成工作需求,无须复杂的Java程序,就能快速地开发出动态网页。第三方开发人员也可以为常用功能建立标签库,使网页开发人员能够使用熟悉的开发工具(如Dream-weaver)来完成特定功能的工作。
(4)多层企业级应用架构的支持
随着Internet的发展,当前的商业应用正在向着更有威力、弹性的分布式对象系统转变。JSP技术是Java企业级版本J2EE的一部分,它主要是负责前端显示,而分布对象主要依赖企业JavaBean(Enterprise JavaBeans,EJB)和Java命名和目录接口(The Java Naming and Directory Interface,JNDI),Servlet则被用于展现一些控制逻辑。
2.ASP
动态服务器主页(Active Server Pages,ASP)技术是Microsoft公司在1996年底推出的一种开发服务器端的Web应用程序技术。ASP的主要特点是:把HTML、脚本和数据库的访问功能结合在一起,组成了服务器端的应用程序。ASP的编程语言是VBScript和JScript,易于掌握,降低了服务器端应用程序的编程难度。ASP包含内置对象、内置组件、外置组件和ADO数据库访问接口。
当客户端浏览器访问ASP页面时,服务器把ASP页面解释生成标准的HTML代码发送到客户端浏览器。ASP容易学习,使用方便。但是由于某些网络操作系统不支持ASP,一般常与Windows系列的操作系统配套使用。在客户端访问ASP时,每次都要解释一遍,所以运行速度较慢。
3.PHP
超文本预处理器(Hypertext Preprocessor,PHP)由Rasmus Lerdorf于1994年提出,1995年发布第一个公开版本。PHP是自由软件,运行成本低。与ASP技术类似,PHP是服务器端的Web应用程序开发技术。它具有多平台特性、能够无缝运行在UNIX、Linux和Windows平台上。它支持多种通用的Web服务器(如IIS、Apache等),在变换平台时,不需要改变PHP代码。PHP对数据库的操作具有很强的兼容性,几乎支持所有的主流和非主流数据库,如Oracle、Sybase、MySQL、informix、Access和dBase等。
PHP的缺点主要包括:运行环境的建立比较复杂,技术支持不够充分,使得其速度较慢。
1.2.3 数据库简介
Web数据库是指在互联网中以Web查询接口方式访问的数据库资源。Web技术包括由静态网页技术的HTML到动态网页技术的CGI、ASP、PHP、JSP等。因此,Web已经不再局限于仅仅由静态网页提供信息服务,而是改变为动态的网页,可以提供交互式的信息查询服务,使信息数据库服务成为可能。简而言之,Web数据库就是将数据库技术与Web技术融合在一起,使数据库系统成为Web的重要有机组成部分,从而实现数据库与网络技术的无缝结合。这一结合不仅把Web与数据库的所有优势集合在一起,而且充分利用了大量已有数据库的信息资源。Web数据库由数据库服务器(Database Server)、中间件(Middle Ware)、Web服务器(Web Server)、浏览器(Browser)4部分组成。下面简单介绍几种常用数据库。
1.Oracle
Oracle公司前身叫SDL(Software Deve lop ment Labs),由Larry Ellison和另两个编程人员在1977年创办,他们开发了自己的拳头产品,在市场上大量销售。1979年,Oracle公司引入了第一个商用SQL关系数据库管理系统。Oracle公司是最早开发关系数据库的厂商之一,其产品支持应用广泛的操作系统平台。
2.Sybase
Sybase公司成立于1984年,公司名称“Sybase”取自“system”和“database”的组合。Sybase公司的创始人之一BobEpstein是Ingres大学版(与System/R同时期的关系数据库模型产品)的主要设计人员。公司的第一个关系数据库产品是1987年5月推出的Sybase SQL Server 1.0。Sybase首先提出Client/Server数据库体系结构的思想,并率先在Sybase SQL Server中实现。
3.SQL Server
1987年,Microsoft和IBM合作开发完成OS/2操作系统,IBM在其销售的OS/2Extend- edEdition系统中绑定了OS/2Database Manager,而Microsoft产品线中尚缺少数据库产品。为此,Microsoft将目光投向Sybase,同Sybase签订了合作协议,使用Sybase的技术开发基于OS/2平台的关系型数据库。1989年,Microsoft发布了SQL Server 1.0版。
4.MySQL
MySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQL AB公司,该公司在2008年1月16日被Sun公司收购。目前MySQL被广泛地应用在中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体成本而选择了MySQL作为网站数据库。MySQL官方网站的地址是www.mysql.com。