• 1.1 Web应用程序基础知识

URL、URN与URI

URL:Uniform Resource Locator

URN:Uniform Resource Name

URI:Uniform Resource Identifier

HTTP协议指架构在TCP/IP之上应用层的一种协议。通信协议基本就是两台计算机间对谈沟通的方式。按不同的联机方式与所使用的网络服务而定,会有不同的通信协议。如,发送信件是会用SMTP(Simple Mail Transfer Protocol),传输文件时用FTP,下载信件时使用POP3(Post Office Protocal 3)等,而浏览器跟Web服务器之间使用的沟通方式则是HTTP。

HTTP两个基本特性:基于请求/响应模型、无状态通信协议

HTTP是一种基于请求/响应的通信协议,客户端对服务器发出一个取得资源的请求,服务器将要求的资源响应给客户端,每次的联机只做一次请求/响应,没有请求就没有响应。

在HTTP协议下,服务器响应客户端后,就不会记得客户端的信息,更不会去维护与客户端有关的状态,因此,HTTP又称为无状态的通信协议。

1、GET请求

GET请求就是向服务器取得指定资源,在发出GET请求时,必须一并告诉服务器所请求资源的URL,以及一些标头信息。

2、POST请求

POST请求就是在请求时发布信息给服务器,对于大量或复杂的信息发送,基本上会用POST发送。

3、如何选用GET或POST?

GET请求与POST请求是使用Servlet/JSP时最常用的两个请求方式。

GET请求跟随在URL之后的请求参数长度是有限的

GET请求的请求参数会出现在地址栏上,敏感性或有安全性考虑的请求不用GET

POST请求的请求参数不会出现在地址栏上,所以无法加入浏览器的书签之中

GET请求应该用于等幂操作,同样的请求返回的结果不变

POST请求应该用于非等幂操作,请求会改变服务器的状态

动态网页与静态网页

静态网页:指请求服务器上的网页时,服务器不对网页文件作任何处理,读取文件后直接当作响应传给浏览器。

动态网页:指服务器在响应之前,可能先依客户端的请求参数、标头或实际服务器上的状态,以程序的方式动态产生相应内容,再回传给用户。

  • 1.2 Servlet/JSP简介

何谓Web容器

对于Java程序而言,JVM是其操作系统,.java文件会编译成可执行的.class文件。

容器的角色定位

下面是一个请求/响应的例子:

(1)客户端对Web服务器发出HTTP请求

(2)HTTP服务器收到HTTP请求,将请求转由Web容器处理,Web容器会剖析HTTP请求内容,创建各种对象(HttpServletResponse...)

(3)Web容器由请求的URL决定要使用哪个Servlet来处理

(4)Servlet根据请求对象的信息决定如何处理,通过响应对象来创建响应

(5)Web容器与HTTP服务器沟通,Web服务器将响应转换为HTTP响应并传回给客户端

关于MVC/Model 2

MVC是Model、View、Controller的缩写,模型、视图、控制器,分别代表应用程序的三种职责各不相同的对象。

控制器:取得请求参数、验证请求参数、转发请求给模型、转发请求给画面,这些都是程序代码来实现

模型:接受控制器的请求调用,负责处理业务逻辑、负责数据存取逻辑等

视图:接受控制器的请求调用,会从模型提取运算后的结果

第一章 Web应用程序简介的更多相关文章

  1. 第一章 web应用程序开发原理

    [总结] 1.计算机模式  :主机  哑端计算机模式 优点:速度快  反应快 维护修理方便 数据安全性高 缺点:单台计算机安全操作 应用程序难维护 难以跨出平台 客户端 客户计算机模式 优点:速度快 ...

  2. 第一章 Web应用程序开发基础

    一.HTTP协议工作机制 HTTP协议(HyperText Transfer Protocol,超文本传输协议)是用于从WWW服务器传输超文本到本地浏览器的传送协议.它是一种主流B/S架构中应用的通信 ...

  3. 第一章ASP.NET SignalR简介

    第一章ASP.NET SignalR简介 1.1概述: ASP.NET SignalR是微软新开发的类库,为的是帮助ASP.NET开发人员很方便地开发实时网络功能. SignalR允许服务器端和客户端 ...

  4. 核心系统命令实战 第一章Linux命令行简介

    第一章Linux命令行简介 1.1 Linux命令行概述 1.1.1 Linux 命令行的开启和退出 开启:登陆账号密码进入系统 退出:exit/logout  快捷键:Ctrl+d 1.1.2 Li ...

  5. 第一章、PyQt的简介、安装与配置

    老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 第一章.PyQt的简介.安装与配置 一.引言 当朋友向我推荐PyQt时,老猿才知道有这样一个在Pyt ...

  6. Go Web 编程 第一章 Web相关概念

    第一章 Go与Web应用 Go学习群:415660935 1.1 Web应用 在计算机的世界里,应用(application)是一个与用户进行交互,并完成用户特定任务的软件程序.而Web应用则是部署在 ...

  7. 第一章 权限管理DEMO简介

    源代码GitHub:https://github.com/ZhaoRd/Zrd_0001_AuthorityManagement 1.系列介绍 工作已有五年之久,一直有想通过博客写点自己知道的,在博客 ...

  8. Java Web程序设计笔记 • 【第1章 Web应用程序】

    全部章节   >>>> 本章目录 1.1 Web 应用程序 1.1.1 Web 应用程序概述 1.1.2 Web 应用程序的工作原理 1.1.3 实践练习 1.2 HTTP协议 ...

  9. (第一章)对程序员来说CPU是什么

    这几天,看到一本书,<程序是怎么跑起来的>,觉得之前都没有完整的看完一本书,现在要从这本书开始,慢慢的培养自己写读书笔记的习惯,不能度过去就忘了. 学习是一个螺旋上升的过程,不要指望一下子 ...

随机推荐

  1. ScrollView中嵌套recycleView 出现的不显示,显示不全,终极解决方案

    最近公司项目中用到了ScrollView去嵌套recycleView, 最开始我天真的把recycleView直接放入scrollView中,结果可想而知,什么都不显示,瞬间懵逼,我心想应该是和嵌套L ...

  2. Vue.js之v-if

    ---恢复内容开始--- 首先,在跟着api做的时候,要把v-if包裹在Vue对应的el里面,重要的事情说三遍. html: <div id="vif"> <di ...

  3. JavaScript零基础学习系列四

    案例分享 对象 具体的东西,在以js的眼光看所有的标签都是标签对象,对象是属性的无序集合. 创建对象有两种方式: 直接量: 构造器:所谓的构造器,其实就是函数,只不过这个函数有些特殊,因为它是用于创建 ...

  4. 魔术常量__DIR__

    在PHP5.3中,增加了一个新的常量__DIR__,指向当前执行的PHP脚本所在的目录. 例如当前执行的PHP文件为 /www/website/index.php 则__FILE__等于'/www/w ...

  5. iOS开发UI篇—懒加载

    iOS开发UI篇—懒加载 1.懒加载基本 懒加载——也称为延迟加载,即在需要的时候才加载(效率低,占用内存小).所谓懒加载,写的是其get方法. 注意:如果是懒加载的话则一定要注意先判断是否已经有了, ...

  6. 向shell脚本中传入参数

    写一个 程序名为    test.sh    可带参数为 start 和 stop 执行  test.sh start执行  start 内容的代码 执行 test.sh stop 执行 stop 内 ...

  7. CSS DIV自动适应高度

    当div需要设定自适应高度时,可用到的css属性,min-height:200px;代表的是当div的内容超出了200px时,就会自动适应高度,兼容所有浏览器(IE6除外),如果是IE6则需要设置&q ...

  8. Windows操作系统待整理

    12. 2001年10月25日Windows XP发布,Windows XP是基于Windows 2000代码的产品,同时拥有一个新的用户图形界面(叫做月神Luna),它包括了一些细微的修改.集成了防 ...

  9. Python之路【第一篇】:Python简介和入门

    python简介: 一.什么是python Python(英国发音:/ pa θ n/ 美国发音:/ pa θɑ n/),是一种面向对象.直译式的计算机程序语言. 每一门语言都有自己的哲学: pyth ...

  10. UEditor百度编辑器,工具栏上自定义添加一个普通按钮

    添加一个名叫“hougelou”的普通按钮在工具栏上: 第一步:找到ueditor.config.js文件中的toolbars数组,增加一个“hougelou”字符串,然后找到labelMap数组,对 ...