http协议,servlet的生命周期
1.http协议(http协议是无状态的)
http协议是指计算机通信网络中两台计算机进行通信必须共同遵守的规定或规则,它允许将超文本标记语言(html)文档从web服务器传送到客户端的浏览器(目前我们使用的是http/1.1版本)。
(1)客户端浏览器和服务器的交互原理:当我们在浏览器输入url后,我们的浏览器给web服务器发送了一个request请求,服务器接收到request后进行处理,生成相应的response响应对象,返回给客户端浏览器,浏览器分析response中的html,发现其中引用了很多其他文件,比如图片,css,js,浏览器会再多次发送request请求去获取图片,css,js;
(2)状态码:Response消息中的第一行叫做状态行,由HTTP协议版本号,状态码, 状态消息三部分组成。状态码用来告诉HTTP客户端,HTTP服务器是否产生了预期的Response HTTP/1.1中定义了5类状态码, 状态码由三位数字组成,第一个数字定义了响应的类别
1XX提示信息-表示请求已被成功接收,继续处理
2XX成功-表示请求已被成功接收,理解,接受
3xx重定向-要完成请求必须进行更进一步的处理!
4XX客户端错误-请求有语法错误或请求见法实现
5xX 服务器端错误- 服务器末能实现合法的请求!
常见状态码:200表示成功! 302 表示重定向 304 表示上次的文档被缓存,可以继续使用 400:客户端请求错误,不被服务器所理解 403:服务器收到请求但是拒绝服务 404:请求资源不存在 500:服务器发生了不可预期的错误
(3)http协议定义了许多与服务器交互的方法,最基本的4种分别是GET,POST.PUT,DELETE,一个url地址用于描述一个网络上的资源,而GET,POST,PUT,DELETE分别对应着对这个资源的查改增删;最常见的就是GET,POST GET一般用于获取,查询资源信息,而POST一般用于更新资源信息
GET,POST的区别 :1.GET提交的数据会放在url之后,url和传输数据之间以?分割,参数之间以&相连(所以GET提交方式有安全隐患) POST方法是把提交的数据http包中的body中 2.GET提交的数据大小有限制,而POST提交数据没有限制 3.GET方式需要使用RequestQueryString来取得变量的值,而POST方式通过RequestForm来取得变量的值
二。servlet的生命周期
加载类-->实例化(为对象分配空间)-->初始化(为对象的属性赋值)-->请求处理(服务阶段)-->销毁 其中加载阶段是无法观察的,初始化的时候可以调用init方法,服务阶段调用service方法,摧毁阶段调用destroy方法
http协议,servlet的生命周期的更多相关文章
- Servlet的生命周期及工作原理
Servlet生命周期分为三个阶段: 1,初始化阶段 调用init()方法 2,响应客户请求阶段 调用service()方法 3,终止阶段 调用destroy()方法 Servlet初始化阶段: 在 ...
- Servlet的生命周期+实现方式
1.Servlet的生命周期: (1)被创建: 默认情况下,Servlet第一次被访问时,被服务器创建.会调用init()方法. 一个 ...
- JavaWeb学习之Servlet(二)----Servlet的生命周期、继承结构、修改Servlet模板
[声明] 欢迎转载,但请保留文章原始出处→_→ 文章来源:http://www.cnblogs.com/smyhvae/p/4140466.html 一.http协议回顾: 在上一篇文章中:JavaW ...
- Servlet学习笔记(1)--第一个servlet&&三种状态对象(cookie,session,application)&&Servlet的生命周期
servlet的404错误困扰了两天,各种方法都试过了,翻书逛论坛终于把问题解决了,写此博客来纪念自己的第一个servlet经历. 下面我会将自己的编写第一个servlet的详细过程提供给初学者,大神 ...
- servlet的生命周期与工作原理、使用!
概念: Servlet是一个java程序运行在服务器上,处理客户端请求并做粗响应的程序!Servlet是和平台无关的服务器组件,它运行在Servlet容器中,Servlet容器 负责servlet和客 ...
- Servlet的生命周期与运行原理
Servlet的生命周期: 1 加载classLoader 2 实例化 new 3 初始化 init(ServletConfig) 4 处理请求 service doGet d ...
- servlet的生命周期和servlet的继承关系
一.servlet的生命周期 一个servlet类的对象 加载——>实例化——>初始化——>服务——>销毁 第一次访问某个servlet的时候 首先调用其 构造函数 pub ...
- (转)JavaWeb学习之Servlet(二)----Servlet的生命周期、继承结构、修改Servlet模板
[声明] 欢迎转载,但请保留文章原始出处→_→ 文章来源:http://www.cnblogs.com/smyhvae/p/4140466.html 一.http协议回顾: 在上一篇文章中:JavaW ...
- (转)Servlet的生命周期——初始化、运行、销毁全部过程
背景:面试中很基础的一个问题,所以有必要好好整理一番. Servlet体系结构是建立在 Java 多线程机制上的,它的生命周期由 Web 容器负责. 当客户端第一次请求某个 Servlet 时,Ser ...
随机推荐
- 决策树(Decision Tree
转化自:https://trainings.analyticsvidhya.com/courses/course-v1:AnalyticsVidhya+LPDS2019+LPDS2019_T1/cou ...
- Educational Codeforces Round 54 (Rated for Div. 2) D:Edge Deletion
题目链接:http://codeforces.com/contest/1076/problem/D 题意:给一个n个点,m条边的无向图.要求保留最多k条边,使得其他点到1点的最短路剩余最多. 思路:当 ...
- Ansa 自动加载用户脚本设置
1.在安装路径(×××\AppData\Local\Apps\BETA_CAE_Systems\ansa_v16.0.0\config)找到user_ANSA_TRANSL.py: 打开文本可以发现里 ...
- 13行代码实现:Python实时视频采集(附源码)
一.前言 本文是<人脸识别完整项目实战>系列博文第3部分:程序设计篇(Python版),第1节<Python实时视频采集程序设计>,本章内容系统介绍:基于Python+open ...
- SpringBoot与SpringCloud的版本对应详细版
大版本对应: Spring Boot Spring Cloud 1.2.x Angel版本 1.3.x Brixton版本 1.4.x stripes Camden版本 1.5.x Dalston版本 ...
- jenkins疑惑
本地仓库,脚本 os.getcwd() 获取当前脚本目录 正常 把脚本放到了工作区,os.getcwd()获取的却是 项目的主目录 打算: 思路: 兼容一波,给jenkins的写个配置文件在 项目的主 ...
- dubbo 用来做什么
1.各个独立app之间的通信问题怎么解决? 2.怎么做到统一调度.协调处理. 3.如果计费模块是并发最大的模块,但是其他模块并发不是很大.则需要对计费进行负载均衡,怎么实现?
- WCF服务could not be activated
The requested service, 'http://10.10.10.143/XmlEditorService/XmlEditorService.svc' could not be acti ...
- text_CNN笔记
Text-CNN模型作为文本分类模型,通过验证实验以及业界的共识,在文本分类任务中,CNN模型已经能够取到比较好的结果,虽然在某些数据集上效果可能会比RNN稍差一点,但是CNN模型训练的效率更高.所以 ...
- 检查邮箱IP是否在国际反垃圾邮件组织的黑名单中
有时候邮件发不出去,很有可能就是邮件服务器的IP被国际上一些反垃圾组织列入黑名单了,这时你可以通过返回的邮件判断是否进入黑名单,或者通过以下查询地址看是否被列入,然后一个个申请移除: http://m ...