天天看点

第三章 web应用和HTTP基础

web application is that it is an application that is accessible from the web.

一个一般的web应用例子就是网站提供免费的电子邮件服务。一个web应用的主要好处就是就是简单。能让用户访问程序,而用户只需要一个浏览器。

Web应用是由web组件构成的。web组件完成特定的任务。

对web资源进行的一种分类是:主动和被动。一个资源是被动的,当它自己不能拥有任何处理过程。主动的对象拥有处理的能力。例如浏览器向web服务器查找一个html文件,这个html文件就是被动资源;相反,一个servlet就是一个主动资源。被动资源也叫静态资源,因为它的内容不因为请求而改变。

Servlet容器是应用服务器的一部分。

应用服务器还可能提供J2EE组件,例如EJB容器,JNDI服务器,JMS服务器。

一个web应用是用部署描述器来描述的。它包含了web应用中所有动态组件的描述信息。它还定义了web应用的安全性。应用服务器用部署描述器来初始化web应用的组件,并使它们对客户有效。

URI,URL和URN的区别:

URI(统一资源标识符 Uniform Resource Identifer):URI是用来标识所有资源的字符串。标识资源并不意味着我能取回资源。URI是URL和URN的超集。

URL(统一资源定位符Uniform Resource Locator):URI标识一般的Internet协议。例如HTTP,FTP。URL不是正式术语,他不能在技术规范上使用。

URN(Uniform Resource Name):URN是一种标识符,他能唯一标识一个资源但不能指明个如何访问资源。

请求的方法名:

PUT ,OPTION ,DELETE ,TRACE ,CONTENT ,GET ,POST ,HEAD

GET :的意思是”get the resource identified by this URI” 。这种资源通常是被动资源,当只有少数或没有参数需要传递时,GET请求也可以请求主动资源,如:

GET /servlet/helloServlet?userid=john HTTP/1.0

HEAD:HTTP HEAD请求被用来取回关于资源的meta-information。所以,对HEAD请求的相应只包括header。HEAD请求的格式和GET请求的一样。

HEAD一般被用来检查资源在发送到客户端前服务器最后一次被修改的时间。一个HEAD请求可以节省很多带宽,尤其是如果资源很大时。因为如果客户端已经拥有最新的版本的时候,实际的资源不会再发送给客户端。

POST:POST被用来发送需要被处理的数据到服务器.它的意思是:”post the data to the active resource identified by this URI”。

总结:web应用是一系列web组件的集合,这些组件完成特定的任务,并允许用户通过使用浏览器访问业务逻辑。

继续阅读