第一章 Java web技术概述

1.2 Web常用技术

1.2.2 URL和URI

URL通常由四部分组成:

  • 协议名称

  • 所在主机的DNS名

  • 可选端口号

  • 资源的名称

http://www.baidu.com:80/index.html

http://localhost:8080/index.html

URI由模式和模式特有部分组成,他们之间用冒号隔开

schema:schema-specific-part

  • 常见模式有:file、ftp、http...

  • 模式特有部分没有特定的语法,但很多都具有层次结构的形式,例如://authority/path?query

URL与URI不同,URI没有指向某个位置的某个资源名称,页不指定如何访问资源。

1.2.3 HTML和XML概述

一个HTML文档一般包含两类信息:一类是标记信息,另一类是文档的字符数据。

1.3 服务器资源

1.3.1 主动资源与被动资源

  • 被动资源(静态资源)

  • 主动资源

1.3.2 静态文档和动态文档

  • 静态文档:客户发出对该文档的请求,服务器返回这个文件。

    • 优点:简单

    • 缺点:不够灵活

  • 动态文档:文档内容可根据需要动态生成

    • 服务器端动态文档技术(重点)

    • 客户端动态文档技术(重点)

1.3.3 服务器端动态Web文档技术

  1. CGI技术(效率低)

公共网关接口(Common Gateway Interface)是在服务器端生成动态Web文档的传统方法。CGI是一种标准化的接口,允许Web服务器与后台程序和脚本通信,这些后台程序和脚本能够接收输入信息,访问数据库,最后生成HTML页面作为响应。

  • httpd在接受到一个对CGI程序的请求时,并不返回该文件,而是执行该文件,然后将执行结果发送回服务器。

  • 从CGI程序到服务器的连接是通过标准输出是实现的,所以CGI程序发送给标准输出的任何内容都可以发送给服务器,服务器再将其发送给客户浏览器。

  • CGI编程的主要优点体现在其灵活性上,可以用任何编程语言编写CGI程序。

  1. 服务器扩展技术

使服务器执行单独的可执行模块,当服务器启动时该模块就装入内存并只初始化一次。然后,就可以通过已经驻留在内存的、准备提供服务的模块副本为每个请求提供服务。这些独立的可执行模块称为服务器扩展。在Java平台上,服务器扩展是使用Servlet API编写的,服务器扩展模块叫做Servlet容器

  1. 在HTML页面嵌入脚本技术

另一种实现动态文档技术是在Web页面嵌入某种语言的脚本,然后让服务器来执行这些脚本以便生成最终发送给客户的页面。

1.3.4 客户端动态Web文档技术

通常使用js结合DOM(文档对象模块,其实就是获取html标签,然后可以对其进行操作)技术实现客户端动态Web文档技术。

客户端动态文档的技术和服务器端的技术是完全不同的。

  • 服务器端动态文档技术的页面,代码是在服务器端执行的

  • 客户端动态文档技术的页面,代码是在客户端执行的

1.5 Servlet和JSP入门

Web容器

Web服务器使用一个单独的模块装在和运行Servlet与JSP页面,这个模块称为Servlet容器或Web容器。Tomcat就是一个Web容器,

你可能感兴趣的:(第一章 Java web技术概述)