响应:服务器将请求的处理结果发送给浏览器的过程
http协议规范浏览器和服务器的数据交互的格式
使用键值对精准传输数据
Content-type控制数据格式
无连接:无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求,并受到客户的应答后,即断开连接。采用这种方式节省传输时间。
无状态:http 协议是无状态协议。对事物处理没有记忆能力。缺少状态意味着如果需要处理后续信息,需要重连接
GET和POST区别
GET请求数据会把数据显示在url输入框中,所以限制get的数据长度不是http协议,而是输入栏长度
第一次调用Serlvet时,就会被tomcat加载到内存中,直到下次服务器重启。客户端发起请求时,调用servlet类,tomcat服务器就会去相应的url位置寻找servlet.class
生命周期--从第一次执行到,服务器关闭
客户端每发送一次请求,服务器端会创建一个request对象用于存储请求数据(请求头 请求行 请求数据)
request对象学习
作用:request对象封存了当前请求的所有信息
使用:
获取请求头数据
获取请求行数据
获取用户数据
request对象由tomcat服务器创建,并由作为实参传递给请求的servlet的service方法
Response用来响应一个对象
request对象可以在不同的servlet中流转
解决了一次请求内的不同Servlet的数据共享问题
作用域:基于请求转发,一次请求中的所有Servlet共享
注意:使用Request对象进行数据流转,数据只在一次请求内有效
特点:服务器创建
每次请求都会创建
Cookie学习
cookie用于保存用数据
临时存储:存储在浏览器的内存中,浏览器关闭,cookie清除
定时存储:设置Cookie的有效期在硬盘中存储
Cookie c=new Cookie(“”);
同一个用户的多个请求-->数据共享使用session
Session学习
问题:
一个用户的不同请求处理 的数据共享怎么办?
原理:
用户第一次访问服务器,服务器会创建一个session对象给此用户,并将该session对象的JSESSIONID使用cookie技术存储到浏览器中,用户的其他请求可以获取同一个session对象 ,从而确保了获取到的是同一个session对象;session使用的cookie的标识符是临时的。·
使用:
创建Session对象/获取Session对象
HttpSession hs=req.getSession();
如果请求中拥有session的标识符也就是JSESSIONID,则返回对应的session队形。
如果请求中没有session的标识符,则创建新的session对象,并将JSESSIONID存储在cookie中
Servletcontext学习
问题
解决不同用户共享数据
特点
服务器创建
用户共享
生命周期
从服务器启动到关闭
使用
获取ServletContext对象
使用ServletContext对象完成数据共享
Code
//第一种方式
ServletContext sc=this.getServletContext ();
//第二种方式
ServletContext sc=this.getServletConfig().getServletContext ();
//第三种
ServletContext sc=req.getSession().getServletContext();