1、XML与WEB技术,闫帅领,指定用书:JSP实用教程(第二版)主编:耿祥义 清华大学出版社,主要参考用书: Java Web 编程从入门到实践主编:徐林林清华大学出版社Java 程序设计教程(第二版)主编:雍俊海清华大学出版社,第1章 Web编程技术概述,1.1 WWW服务 1.2 常见应用系统的体系结构 1.3 主流Web编程技术介绍 1.4 Web应用的运行环境 1.5 第一个Web应用程序,1.1 WWW服务,WWW (World Wide Web) 起源 19801991:WWW的开发 欧洲原子能研究中心(CERN,法语:Conseil Europen pour la Recherch
2、e Nuclaire) Berners-Lee,1.1 WWW服务,WWW (World Wide Web) 起源 19921995:WWW的发展 1993年:美国伊利诺斯大学国家超级计算机应用中心Mosaic浏览器。 1994年4月:Netscape Navigator。 1994年9月:万维网协会(W3C,World Wide Web Consortium)成立。,1.1 WWW服务,WWW (World Wide Web) 起源 19961998:WWW的商业化 大多数均拥有自己的Web站点。 Web的交互性导致了基于Web的商业行为(即电子商务)和世界范围内的多用户通信。,1.1 WW
3、W服务,WWW (World Wide Web) 起源 19992001:“.com”的兴起和繁荣 创业计划+风险投资=大批具有Internet背景的“.com”公司 2001年互联网泡沫破灭,1.1 WWW服务,WWW (World Wide Web) 起源 2002至今:无处不在的WWW 互联网以一种更加稳健和理性的方式发展,1.1 WWW服务,WWW的特点 平台无关 分布性 动态性 交互性,1.1 WWW服务,WWW的相关概念 统一资源标识符 (Uniform Resource Identifier, URI) 互联网的一个协议要素 可以定位任何远程或本地的可用资源 通用格式: 例:ft
4、p:/tom: WWW服务,WWW的相关概念 超文本传输协议 (HyperText Transfer Protocol, HTTP) 一种在互联网上传输超文本数据的网络协议。 HTTP的安全版本:HTTPS 超文本标记语言 (HyperText Markup Language, HTML) 用于描述网页文档的外观和格式,1.1 WWW服务,WWW的相关概念 Web服务器 提供网上信息浏览服务 主要的Web服务器: IIS,Internet Information Server Apache的HTTP服务器 浏览器,1.1 WWW服务,WWW的相关概念 JavaScript 一种脚本语言; 广泛
5、应用于客户端网页,提供动态的交互功能。 层叠样式表 CSS,Cascading Style Sheets 是一种为用标记语言书写的文档添加样式的语言。,1.1 WWW服务,WWW的相关概念 Web 1.0 通过拨号网络访问,平均只有50Kbps的带宽。 典型的Web 1.0站点: 静态页面 使用框架或框架集 使用一些诸如标记这样的专有HTML扩展标记 提供在线客户留言簿 使用GIF图片作为网站的按钮,1.1 WWW服务,WWW的相关概念 Web 2.0 基于Web的网上社区和基于主机的网络服务; 平均带宽1Mbps; 改变了软件开发人员和最终用户使用Web的方式。,1.2 常见应用系统的体系结
6、构,客户/服务器(Client/Server)结构 应用于计算机网络环境下; 分离客户端和服务器端; 网络上的客户或服务器被称作“节点”。 最基本的客户/服务器结构只包含两类节点:客户和服务器,有时也被称为二层(two-tier)结构。,1.2 常见应用系统的体系结构,客户/服务器(Client/Server)结构,1.2 常见应用系统的体系结构,客户/服务器(Client/Server)结构,三层结构,1.2 常见应用系统的体系结构,客户/服务器(Client/Server)结构 优点 极好的可维护性 数据的安全性有保障 数据的更新方便 技术成熟 不同的客户端只要满足相关的协议标准,都可以访
7、问服务器,1.2 常见应用系统的体系结构,客户/服务器(Client/Server)结构 缺点 会导致网络交通拥塞 系统缺少足够的健壮性,1.2 常见应用系统的体系结构,浏览器/服务器(Browser/Server)结构 本质上仍是一种客户/服务器结构。 客户端通过Web浏览器来实现的; 没有或者只有极少部分业务逻辑在浏览器端实现; 主要的业务逻辑在服务器端实现。,1.2 常见应用系统的体系结构,浏览器/服务器(Browser/Server)结构 优点 除浏览器外,不需要在客户端安装其他软件; 便于系统管理、维护和升级; 减轻客户机负担,降低对客户机的性能要求。,1.2 常见应用系统的体系结构
8、,浏览器/服务器(Browser/Server)结构 缺点 不便于录入大量数据; 构建复杂应用较困难,缺少成熟开发工具; HTTP可靠性低有可能造成应用故障; 访问量大时,服务器端负载过重; 嵌入客户端页面的脚本代码易暴露业务规则。,1.3 主流Web编程技术介绍,通用网关接口(CGI) 一种外部应用程序和信息服务器之间的接口标准; 通过CGI可以让客户端从Web浏览器向执行在Web服务器上的程序请求数据; 特点: 独立于语言; 对于每一个请求,需启动一个进程,运行开销大; 开发难度较大。,1.3 主流Web编程技术介绍,PHP (PHP: Hypertext Preprocessor) 开放
9、源代码脚本语言。 主要用于服务器端应用程序及动态网页上。 适合开发轻量级Web应用系统。 LAMP:Linux+Apache+MySQL+PHP,1.3 主流Web编程技术介绍,ASP (Active Server Pages) 微软公司开发的服务器端脚本处理引擎,用于动态生成网页。 多数ASP页面都是使用VBScript语言编写。 ASP可与多种数据库的交互,实际应用中多用ASP+Microsoft SQL Server。,1.3 主流Web编程技术介绍,JSP (JavaServer Pages) 是由Sun主导建立,可响应客户端请求、动态生成Web页面的技术标准,以Java语言作为脚本语
10、言。 JSP页面的组成: 静态数据,如 HTML; JSP指令,如 include 指令; JSP脚本元素和变量; JSP动作; 用户自定义标标记;,1.3 主流Web编程技术介绍,.NET框架 一个由微软开发的致力于敏捷软件开发、平台无关性和网络透明化的软件开发平台。 运行和管理方式:类似Java虚拟机。 支持语言:C#、VB.NET、C+、Python等。 是J2EE技术的主要竞争者。,1.3 主流Web编程技术介绍,J2EE/JavaEE Java 2 Platform Enterprise Edition Sun公司为企业级应用推出的标准平台 三个版本: Java EE Java SE
11、 Java ME,1.4 Web应用的运行环境,Internet Information Services (IIS) 微软公司提供的Web服务器,必须运行于Windows平台。 提供了高度可靠的、易管理的、可扩展的、及安全的Web应用系统架构。 最新版本包含FTP、SMTP、NNTP和HTTP/HTTPS等网络服务。,1.4 Web应用的运行环境,Tomcat Apache软件基金会下属的Jakarta项目开发的一个Servlet容器。 内含HTTP服务器,实现了对Servlet和JSP的支持。,1.4 Web应用的运行环境,JBoss应用服务器 开源的、遵循最新J2EE规范的应用服务器。
12、特性: 将具有JMX微内核服务作为其总线结构; 采用面向服务的架构(SOA,Service-Oriented Architecture); 具有统一的类装载器,从而能够实现应用的热部署和热卸载能力。,1.4 Web应用的运行环境,WebLogic Server BEA公司的一个J2EE系列产品,采用Java语言开发。 应用服务器:WebLogic Server,1.5 第一个Web应用程序,安装开发环境 Java SE(JDK),C:java -version java version “1.6.0_04“ Java(TM) SE Runtime Environment (build 1.6.
13、0_04-b12) Java HotSpot(TM) Client VM (build 10.0-b19, mixed mode, sharing),1.5 第一个Web应用程序,安装开发环境 Apache Tomcat Java的位置 是否安装成Windows系统服务 默认端口:8080 管理员帐号 配置文件:conf/tomcat-users.xml,1.5 第一个Web应用程序,手动启动Tomcat,1.5 第一个Web应用程序,管理Tomcat,1.5 第一个Web应用程序,管理Tomcat,1.5 第一个Web应用程序,HelloWorld.jsp,Hello WorldHello WorldToday is: ,1.5 第一个Web应用程序,发布应用程序 在Tomcat安装路径的webapps目录下,创建一个名为firstapp的子目录; HelloWorld.jsp存放在firstapp目录下; 对于Tomcat 5.x及以下版本的服务器,还需要在firstapp子目录下再创建一个名为WEB-INF的子目录。,1.5 第一个Web应用程序,运行程序,http:/localhost:8080/firstapp/HelloWorld.jsp,