Servlet
生命周期(面试点)
默认第一次访问的时候创建Servlet对象,执行init方法,每次请求过来之后执行Service方法,在service方法内部根据请求方式的不同调用不同的doXXX方法,Get请求调用doGet方法,Post请求调用doPost方法,当服务器关闭或者项目被移除了就销毁Servlet对象,执行destroy方法,初始化和销毁方法都只执行一次;Servet是单例,也就是说在Servlet整个生命周期中,Servlet对象有且仅有一个
HTTP协议
超文本传输协议,基于请求和响应模型,请求先有,后有响应,一次请求只会有一次响应
请求
请求行
get请求的请求参数在请求行的请求路径后面
请求头
key:value结构的,一般一个key对应一个value,也有一个key对应多个value的情况
user-agent:浏览器的版本信息
referer:当前这次请求从哪里发过来------防止盗取链接,做统计工作
请求体
get请求方式没有请求体
GET和POST的区别(面试点)
1,get方式提交的数据显示在地址栏中,准确的说是在请求行中的请求路径后面,没有请求体,而post方式提交的数据不会显示在地址栏中,提交的数据在请求体中
2,get方式url的长度有限制,而post没有限制
3,post方式提交数据相对安全
响应
响应行
常见的状态码:
404:资源路径找不到:一般查看:action="" @WebServlet("") 转发的路径,重定向的路径等等
302:集合Location的响应头做重定向使用
304:查找本地缓存
500:代码有误
响应头
key:value结构的,一般一个key对应一个value,也有一个key对应多个value的情况
常见的响应头:
Content-Type:响应体的数据格式及编码格式
Content-disposition:文件下载时使用
响应体
网页代码/网页能够看到的内容
|
|