《Web程序设计(第二版)01
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1.3 Web相关技术 1.4 Web发展趋势
1.1 计算模式与程序设计模式的演变
单机运行与集中式计算模式
客户/服务器(C/S)计算模式 浏览器/服务器(Biblioteka Baidu/S)计算模式
软件设计与开发模式的演化
单机运行与集中式计算模式
集中式计算 计算所需要的数据和程序都是集中在一台计算机上进行的,称为集中式
Web服务器
Web客户机
浏览器/服务器(B/S)计算模式
构成
三层结构
客户端Web浏览器 Web服务器 数据库服务器
互联网 具有良好的开放性,利用单一的访问点,用户可以在任何地点使用系统; 用户可以跨平台以相同的浏览器界面访问系统;因为在客户端只需要安装 浏览器,基本上取消了客户端的维护工作,有效的减少了整个系统的运行 和维护成本。 跨越了局域网的限制,将应用分步到互联网
概念及术语(Cont2.)
Web页(Web page)
Web页是指Web服务器上的一个个超文本文件,
或者是它们在浏览器上的显示屏幕。
主页(Home page)
用户在Web服务器上看到的第一个Web页
首页中往往列出了网站的信息目录,或指向其
他站点的超链接,主页是一个网站的入口。
概念及术语(Cont3.)
构成
两层结构(Client/Server,C/S) 20世纪80年代流行 客户
—安装客户端软件
客户机完成与用户的交互任务,具有强壮的数据操纵和事务处理能力
服务器 —安装服务器程序
服务器负责数据管理,提供数据库的查询和管理、大规模的计算等服务
计算机局域网 通过异种平台集成,能够协调现有的各种 IT基础结构;分布式管理;能充分发挥 客户端PC的处理能力,安全、稳定、速度快,且可脱机操作
优点
不足
它必须在客户端安装大量的应用程序(客户端软件),开发成本较高,移植困难, 用户界面风格不统一,使用繁杂,不利于推广使用,维护复杂,升级麻烦,信息 内容和形式单一,新技术不能轻易应用
用户必须在局域网中,对90年代蓬勃发展的互联网新技术不能适应
浏览器/服务器(B/S)计算模式
特点
统一资源定位器URL(Uniform Resource Locator)
信息资源类型://网址:端口号/文件路径/文件名?参数表
网址 端口号 文件路径 文件名 参数表
概念及术语(Cont4.)
端口(port)
端口的分类
按协议类型划分,端口可以分为TCP、UDP、IP和ICMP(Internet控制消息 协议)等。其中TCP端口和UDP端口是最常见端口类型。 按照端口号分布划分,端口分为知名端口(Well-Known Ports)和动态端口 (Dynamic Ports)两部分。 范围从0到1023,这些端口号一般固定分配给一些知名的公共服务。 21端口--FTP服务 25端口--SMTP服务 80端口--HTTP服务 135端口-RPC(远程过程调用)服务等 范围从1024到65535
(4)浏览器显示下载的文档,即网页
Web服务器
Web服务器计算机
安装网络操作系统
安装Web服务程序
Web服务程序
接受客户端(浏览器)的HTTP访问 产品
Windows服务器中的IIS Apache+Tomcat
Web浏览器
HTML或XML文档阅读器
符合HTML规范,标记
计算, 20世纪60、70年代
随着网络的发展,这种集中式计算往往形成一种由大型机和多个与之相 连的终端组成的网络结构,形成主机-终端计算机网络
20世纪50年代初,美国军方建立的一个半自动地面防空系统,简称SAGE。 在SAGE系统中,警戒雷达将天空中飞机目标的方位,距离和高度等信息通 过雷达录取设备自动录取下来,并转换成二进制的数字信号;然后通过数据 通信设备传送到北美防空司令部的信息处理中心,以计算飞机的飞行航向、 飞行速度和飞行的瞬时位置。SAGE系统于1951年由美国麻省理工学院林肯 实验室开始为美国空军设计,1963年建成。
1.2 Web及其工作原理
什么是Web ? Web的工作原理 Web服务器
什么是Web ?
什么是Web ?
互联网 = {所有上网的主机}
各种服务器,如:Web服务,FTP服务器,Email服务器,NNTP服 务器,应用服务器 ,etc. 客户机
WWW ={Web服务器,Web客户机} 网络操作系统 Web服务组件,如Apache/Tomcat,IIS Web浏览器,如IE,Mahton,Firefox
知名端口
动态端口
Java技术
Java的出现
Java 技术是 Sun Microsystems于1995年推出的一种极富创造力的计算平台。 Java的出现是继HTML后,互联网发展的第二个里程碑 Java程序设计语言 Java虚拟机(Java Virtual Machine,JVM)
特点
安全性好、可靠性高、计算能力和数据存储能力强以及系统维护和管理 的费用较低等优点 大型机的初始投资较大、可移植性差、资源利用率低以及网络负载大等 缺点
单机环境下的程序开发过程
源程序,编程人员利用开发工具(如C,Fortran)来编 写程序。 编译 连接
客户/服务器(C/S)计算模式
JDK2.0(JDK1.2)
JDK3.0(JDK1.3) 2000年
JDK4.0(JDK1.4) 2002年
JDK5.0(JDK1.5) 2004年 JDK6.0(JDK1.6) 2006年
XML技术
当今世界,XML技术可谓炙手可热
可扩展标记语言XML(eXtensible Markup Language,可扩展标 记语言)是Internet上最具权威的数据表示和数据交换标准 。 XML和HTML的不同
超文本是一种文本显示与连接技术,可以对文本中的 有关词汇或句子建立链接(即超链接),使其指向其
他段落、文本或链接到其他文档。
当超文本显示时,建立了链接的文本、图片通常以下 划线、高亮等不同的方式显示,来表明这些文本或图 片对应一个超链接。
超级链接(Hyperlink)
Web页中当用户单击它时可以转到其他Web页或当前 页面的其他地方的文字、图片等对象
HTML关心的是内容的表现,是一种表现技术 XML关心的是数据的结构,表达数据之间的关系 XML文档最终以HTML来表现
XML的本质
XML文档是一种数据的表达和存储技术 如果说Java实现了代码的平台无关性,那么XML则实现了数据的平 台无关性 。
这就是XML,互联网时代的基石
优点
不足
Web的工作原理
(1)在浏览器地址栏中,用户输入要访问的网页网址URL (2)Web服务器根据URL中指定的网址、路径和网页文件, 调出相应的HTML、XML文档或Jsp、Asp文件 (3)根据文档类型,Web服务器决定是否执行文档中的服务 器脚本程序,还是直接将网页文件传送到客户端。
互联网时代的编程
Web 程 序 设 计
目
录
第 1 章 Web程序设计基础
第 2 章 Web程序及运行环境
第 3 章 标记语言HTML规范
第 4 章 网页设计与制作
第 5 章 客户端编程
第 6 章 服务端编程
第 1 章
Web程序设计基础
1.1 计算模式与程序设计模式的演变
1.2 Web及其工作原理
不同操作系统平台有不同的JVM 用于Java编程,各种JDK
Java技术的构成
Java API
Java的特点
Java程序“编写一次,到处运行”
编译后生成字节码(.class文件),不是exe 。class文件在JVM上运行,而不是在OS上
完全面向对象
Java语言环境
用户界面API
发布技术 Java虚拟机(JVM)
开发环境(即JDK)
Java程序的编译器(即javac)
抽象窗口工具包AWT(Abstract Windowing Toolkit ),其他库不完整
Java的发展
Java的出现是革命性的,Java十年,日新月异
世界几乎所有著名的计算机公司纷纷购买了Java的使用权,IBM、Apple、DEC、Adobe、 Silicon Graphics、HP、Oracle、Toshiba、Netscape和Microsoft等大公司相继购买了Java的 许可证。另外,众多的软件开发商也开发了许多支持Java的软件产品。 在以网络为中心的计算时代,不支持HTML和Java,就意味着应用程序的应用范围只能限于同质 的环境。
软件设计与开发模式的演化
面向机器语言的开发模式
软件的生命周期开发模式
用户需求分析 系统设计 系统开发 系统测试 运行与维护
原型法开发模式
面向组件(Component)的模式
面向方面编程(Aspect Oriented Programming,AOP)模式 面向服务(SOA)的模式
脚本程序
内置脚本程序引擎,解释执行客户端脚本程序
Web浏览器产品
IE, Maxthon(傲游),Firefox(火狐狸),
Opera等
1.3 Web相关技术
概念及术语
Java技术 XML技术
概念及术语
网站(Web Site)
概念
网站又称Web站点,是Internet中提供信息服务的机构, 这些机构的计算机连接到Internet中,向用户提供Web服 务。
技术
一个Web站点是由一个主目录和主目录下的文件夹和大量
的网页文件构成的,这些网页文件通过超链接连接在一起, 形成特定的应用逻辑,构成一个特定的Web应用。
网站又成为Web应用(Web Application),基于B/S架构 的计算机软件。
概念及术语(Cont1.)
超文本(Hypertext)
XML的出现和发展对于Internet产生了巨大的影响,如果说 Java实现了代码的平台无关性,那么XML则实现了数据的平台 无关性。今天,XML已经逐渐成为整个Web的基本结构和未来 各种发展的基础,由于XML能针对特定的应用定义自己的标记 语言,这一特征使得XML可以在电子商务、政府部门、各行业 领域提供各具特色的独立解决方案。 同时,XML作为一种通用的数据交换语言,已经成为业界的一 种具有垄断性的标准,在跨平台跨系统数据交换方面拥有无可 比拟的优势,其在企业级开发中所扮演的角色越来越重要。 但是,和关系数据库拥有强大的存储和分析引擎不同,XML只 专注于数据的表示,这也使得XML在数据量急速膨胀的时候, 如何有效的管理和使用XML成为了一件令人头痛的事情
基于Web的协同计算
三层结构
浏览器 Web服务器 数据库服务器
优点
瘦客户机,减少客户端维护 突破局域网限制,将应用分布到整个互联网
Web应用系统
传统应用程序
一个exe, DLL 在操作系统下运行
Web应用程序
主目录+各种子目录+网页文件 在Web服务器上运行 Web应用系统又称网站
Java的发展
JDK1.0
从JDK1.0到JDK1.1.8,JDK1.x经过了9个小版本 1998年12月4日,Sun发布了Java历史上最重要的一个JDK版本:JDK1.2,这个版本标志着Java进入了 Java2时代,进入Java的飞速发展时期。 J2EE(Java2 Platform, Enterprise Edition),企业级 应用 J2SE(Java2 Platform, Standard Edition),桌面 J2ME(Java 2 Platform, Micro Edition),嵌入式和移动计算
JDK(Java Development Kit,Java开发工具包)
在1995年Sun虽然推出了Java,但这只是一种语言,而要想开发复杂的应 用程序,必须要有一个强大的开发库支持。 Sun在1996年1月23日发布了JDK1.0 运行环境(即JRE)
核心API 集成API
JDK的构成
1.1 计算模式与程序设计模式的演变
单机运行与集中式计算模式
客户/服务器(C/S)计算模式 浏览器/服务器(Biblioteka Baidu/S)计算模式
软件设计与开发模式的演化
单机运行与集中式计算模式
集中式计算 计算所需要的数据和程序都是集中在一台计算机上进行的,称为集中式
Web服务器
Web客户机
浏览器/服务器(B/S)计算模式
构成
三层结构
客户端Web浏览器 Web服务器 数据库服务器
互联网 具有良好的开放性,利用单一的访问点,用户可以在任何地点使用系统; 用户可以跨平台以相同的浏览器界面访问系统;因为在客户端只需要安装 浏览器,基本上取消了客户端的维护工作,有效的减少了整个系统的运行 和维护成本。 跨越了局域网的限制,将应用分步到互联网
概念及术语(Cont2.)
Web页(Web page)
Web页是指Web服务器上的一个个超文本文件,
或者是它们在浏览器上的显示屏幕。
主页(Home page)
用户在Web服务器上看到的第一个Web页
首页中往往列出了网站的信息目录,或指向其
他站点的超链接,主页是一个网站的入口。
概念及术语(Cont3.)
构成
两层结构(Client/Server,C/S) 20世纪80年代流行 客户
—安装客户端软件
客户机完成与用户的交互任务,具有强壮的数据操纵和事务处理能力
服务器 —安装服务器程序
服务器负责数据管理,提供数据库的查询和管理、大规模的计算等服务
计算机局域网 通过异种平台集成,能够协调现有的各种 IT基础结构;分布式管理;能充分发挥 客户端PC的处理能力,安全、稳定、速度快,且可脱机操作
优点
不足
它必须在客户端安装大量的应用程序(客户端软件),开发成本较高,移植困难, 用户界面风格不统一,使用繁杂,不利于推广使用,维护复杂,升级麻烦,信息 内容和形式单一,新技术不能轻易应用
用户必须在局域网中,对90年代蓬勃发展的互联网新技术不能适应
浏览器/服务器(B/S)计算模式
特点
统一资源定位器URL(Uniform Resource Locator)
信息资源类型://网址:端口号/文件路径/文件名?参数表
网址 端口号 文件路径 文件名 参数表
概念及术语(Cont4.)
端口(port)
端口的分类
按协议类型划分,端口可以分为TCP、UDP、IP和ICMP(Internet控制消息 协议)等。其中TCP端口和UDP端口是最常见端口类型。 按照端口号分布划分,端口分为知名端口(Well-Known Ports)和动态端口 (Dynamic Ports)两部分。 范围从0到1023,这些端口号一般固定分配给一些知名的公共服务。 21端口--FTP服务 25端口--SMTP服务 80端口--HTTP服务 135端口-RPC(远程过程调用)服务等 范围从1024到65535
(4)浏览器显示下载的文档,即网页
Web服务器
Web服务器计算机
安装网络操作系统
安装Web服务程序
Web服务程序
接受客户端(浏览器)的HTTP访问 产品
Windows服务器中的IIS Apache+Tomcat
Web浏览器
HTML或XML文档阅读器
符合HTML规范,标记
计算, 20世纪60、70年代
随着网络的发展,这种集中式计算往往形成一种由大型机和多个与之相 连的终端组成的网络结构,形成主机-终端计算机网络
20世纪50年代初,美国军方建立的一个半自动地面防空系统,简称SAGE。 在SAGE系统中,警戒雷达将天空中飞机目标的方位,距离和高度等信息通 过雷达录取设备自动录取下来,并转换成二进制的数字信号;然后通过数据 通信设备传送到北美防空司令部的信息处理中心,以计算飞机的飞行航向、 飞行速度和飞行的瞬时位置。SAGE系统于1951年由美国麻省理工学院林肯 实验室开始为美国空军设计,1963年建成。
1.2 Web及其工作原理
什么是Web ? Web的工作原理 Web服务器
什么是Web ?
什么是Web ?
互联网 = {所有上网的主机}
各种服务器,如:Web服务,FTP服务器,Email服务器,NNTP服 务器,应用服务器 ,etc. 客户机
WWW ={Web服务器,Web客户机} 网络操作系统 Web服务组件,如Apache/Tomcat,IIS Web浏览器,如IE,Mahton,Firefox
知名端口
动态端口
Java技术
Java的出现
Java 技术是 Sun Microsystems于1995年推出的一种极富创造力的计算平台。 Java的出现是继HTML后,互联网发展的第二个里程碑 Java程序设计语言 Java虚拟机(Java Virtual Machine,JVM)
特点
安全性好、可靠性高、计算能力和数据存储能力强以及系统维护和管理 的费用较低等优点 大型机的初始投资较大、可移植性差、资源利用率低以及网络负载大等 缺点
单机环境下的程序开发过程
源程序,编程人员利用开发工具(如C,Fortran)来编 写程序。 编译 连接
客户/服务器(C/S)计算模式
JDK2.0(JDK1.2)
JDK3.0(JDK1.3) 2000年
JDK4.0(JDK1.4) 2002年
JDK5.0(JDK1.5) 2004年 JDK6.0(JDK1.6) 2006年
XML技术
当今世界,XML技术可谓炙手可热
可扩展标记语言XML(eXtensible Markup Language,可扩展标 记语言)是Internet上最具权威的数据表示和数据交换标准 。 XML和HTML的不同
超文本是一种文本显示与连接技术,可以对文本中的 有关词汇或句子建立链接(即超链接),使其指向其
他段落、文本或链接到其他文档。
当超文本显示时,建立了链接的文本、图片通常以下 划线、高亮等不同的方式显示,来表明这些文本或图 片对应一个超链接。
超级链接(Hyperlink)
Web页中当用户单击它时可以转到其他Web页或当前 页面的其他地方的文字、图片等对象
HTML关心的是内容的表现,是一种表现技术 XML关心的是数据的结构,表达数据之间的关系 XML文档最终以HTML来表现
XML的本质
XML文档是一种数据的表达和存储技术 如果说Java实现了代码的平台无关性,那么XML则实现了数据的平 台无关性 。
这就是XML,互联网时代的基石
优点
不足
Web的工作原理
(1)在浏览器地址栏中,用户输入要访问的网页网址URL (2)Web服务器根据URL中指定的网址、路径和网页文件, 调出相应的HTML、XML文档或Jsp、Asp文件 (3)根据文档类型,Web服务器决定是否执行文档中的服务 器脚本程序,还是直接将网页文件传送到客户端。
互联网时代的编程
Web 程 序 设 计
目
录
第 1 章 Web程序设计基础
第 2 章 Web程序及运行环境
第 3 章 标记语言HTML规范
第 4 章 网页设计与制作
第 5 章 客户端编程
第 6 章 服务端编程
第 1 章
Web程序设计基础
1.1 计算模式与程序设计模式的演变
1.2 Web及其工作原理
不同操作系统平台有不同的JVM 用于Java编程,各种JDK
Java技术的构成
Java API
Java的特点
Java程序“编写一次,到处运行”
编译后生成字节码(.class文件),不是exe 。class文件在JVM上运行,而不是在OS上
完全面向对象
Java语言环境
用户界面API
发布技术 Java虚拟机(JVM)
开发环境(即JDK)
Java程序的编译器(即javac)
抽象窗口工具包AWT(Abstract Windowing Toolkit ),其他库不完整
Java的发展
Java的出现是革命性的,Java十年,日新月异
世界几乎所有著名的计算机公司纷纷购买了Java的使用权,IBM、Apple、DEC、Adobe、 Silicon Graphics、HP、Oracle、Toshiba、Netscape和Microsoft等大公司相继购买了Java的 许可证。另外,众多的软件开发商也开发了许多支持Java的软件产品。 在以网络为中心的计算时代,不支持HTML和Java,就意味着应用程序的应用范围只能限于同质 的环境。
软件设计与开发模式的演化
面向机器语言的开发模式
软件的生命周期开发模式
用户需求分析 系统设计 系统开发 系统测试 运行与维护
原型法开发模式
面向组件(Component)的模式
面向方面编程(Aspect Oriented Programming,AOP)模式 面向服务(SOA)的模式
脚本程序
内置脚本程序引擎,解释执行客户端脚本程序
Web浏览器产品
IE, Maxthon(傲游),Firefox(火狐狸),
Opera等
1.3 Web相关技术
概念及术语
Java技术 XML技术
概念及术语
网站(Web Site)
概念
网站又称Web站点,是Internet中提供信息服务的机构, 这些机构的计算机连接到Internet中,向用户提供Web服 务。
技术
一个Web站点是由一个主目录和主目录下的文件夹和大量
的网页文件构成的,这些网页文件通过超链接连接在一起, 形成特定的应用逻辑,构成一个特定的Web应用。
网站又成为Web应用(Web Application),基于B/S架构 的计算机软件。
概念及术语(Cont1.)
超文本(Hypertext)
XML的出现和发展对于Internet产生了巨大的影响,如果说 Java实现了代码的平台无关性,那么XML则实现了数据的平台 无关性。今天,XML已经逐渐成为整个Web的基本结构和未来 各种发展的基础,由于XML能针对特定的应用定义自己的标记 语言,这一特征使得XML可以在电子商务、政府部门、各行业 领域提供各具特色的独立解决方案。 同时,XML作为一种通用的数据交换语言,已经成为业界的一 种具有垄断性的标准,在跨平台跨系统数据交换方面拥有无可 比拟的优势,其在企业级开发中所扮演的角色越来越重要。 但是,和关系数据库拥有强大的存储和分析引擎不同,XML只 专注于数据的表示,这也使得XML在数据量急速膨胀的时候, 如何有效的管理和使用XML成为了一件令人头痛的事情
基于Web的协同计算
三层结构
浏览器 Web服务器 数据库服务器
优点
瘦客户机,减少客户端维护 突破局域网限制,将应用分布到整个互联网
Web应用系统
传统应用程序
一个exe, DLL 在操作系统下运行
Web应用程序
主目录+各种子目录+网页文件 在Web服务器上运行 Web应用系统又称网站
Java的发展
JDK1.0
从JDK1.0到JDK1.1.8,JDK1.x经过了9个小版本 1998年12月4日,Sun发布了Java历史上最重要的一个JDK版本:JDK1.2,这个版本标志着Java进入了 Java2时代,进入Java的飞速发展时期。 J2EE(Java2 Platform, Enterprise Edition),企业级 应用 J2SE(Java2 Platform, Standard Edition),桌面 J2ME(Java 2 Platform, Micro Edition),嵌入式和移动计算
JDK(Java Development Kit,Java开发工具包)
在1995年Sun虽然推出了Java,但这只是一种语言,而要想开发复杂的应 用程序,必须要有一个强大的开发库支持。 Sun在1996年1月23日发布了JDK1.0 运行环境(即JRE)
核心API 集成API
JDK的构成