HttpServletResponse与会话的了解

本文主要介绍了HttpServletResponse在Web开发中的应用,包括向浏览器发送数据、下载文件、实现验证码功能和重定向。同时,深入讲解了会话的概念,探讨了Cookie和Session在保持会话状态中的作用,特别是Session的使用场景和管理。

HttpServletResponse

web服务器接收到客户端的http请求,针对这个请求,分别创建一个代表请求的HttpServletRequest对象,代表响应的一个HttpServletResponse

如果要获取客户端请求过来的参数:找HttpServletRequest

如果要给客户端响应一些信息:找HttpServletResponse

1、简单分类

负责向浏览器发送数据的方法
在这里插入图片描述
负责向浏览器发送响应头的方法
在这里插入图片描述
响应的状态码
在这里插入图片描述
在这里插入图片描述

2、下载文件

1,向浏览器输出消息
2,下载文件

  1. 要获取下载文件的路径
  2. 下载的文件名是啥?
  3. 设置想办法让浏览器能够支持下载我们需要的东西
  4. 获取下载文件的输入流
  5. 创建缓冲区
  6. 获取OutputStream对象
  7. 将FileOutputStream流写入到buffer缓冲区
  8. 使用OutputStream将缓冲区中的数据输出到客户端!
    在这里插入图片描述

3、验证码功能

后端实现,需要用到 Java 的图片类,生产一个图片
在这里插入图片描述

4、实现重定向

在这里插入图片描述
B一个web资源收到客户端A请求后,B他会通知A客户端去访问另外一个web资源C,这个过程叫重定向

5、简单实现登录重定向

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

6.7、HttpServletRequest

HttpServletRequest代表客户端的请求,用户通过Http协议访问服务器,HTTP请求中的所有信息会被封装到HttpServletRequest,通过这个HttpServletRequest的方法,获得客户端的所有信息;
获取参数,请求转发
在这里插入图片描述

Cookie、Session

1.1、会话

会话:用户打开一个浏览器,点击了很多超链接,访问多个web资源,关闭浏览器,这个过程可以称之为会话;

有状态会话:一个同学来过教室,下次再来教室,我们会知道这个同学,曾经来过,称之为有状态会话;

一个网站,怎么证明你来过?

客户端 服务端

  1. 服务端给客户端一个 信件,客户端下次访问服务端带上信件就可以了; cookie
  2. 服务器登记你来过了,下次你来的时候我来匹配你; seesion

1.2、保存会话的两种技术

cookie :客户端技术 (响应,请求)
session :服务器技术,利用这个技术,可以保存用户的会话信息? 我们可以把信息或者数据放在Session中!
**常见案例:**网站登录之后,你下次不用再登录了,第二次访问直接就上去了!

1.3、Cookie

在这里插入图片描述
在这里插入图片描述
cookie:一般会保存在本地的 用户目录下 appdata;
一个Cookie只能保存一个信息;
一个web站点可以给浏览器发送多个cookie,最多存放20个cookie;
Cookie大小有限制4kb;
300个cookie浏览器上限
删除Cookie;

不设置有效期,关闭浏览器,自动失效;
设置有效期时间为 0 ;

1.4、Session(重点)

在这里插入图片描述
什么是Session:

  • 服务器会给每一个用户(浏览器)创建一个Seesion对象;
  • 一个Seesion独占一个浏览器,只要浏览器没有关闭,这个Session就存在;
  • 用户登录之后,整个网站它都可以访问!–> 保存用户的信息;保存购物车的信息……

- Session和cookie的区别:

  • Cookie是把用户的数据写给用户的浏览器,浏览器保存 (可以保存多个)

  • Session把用户的数据写到用户独占Session中,服务器端保存 (保存重要的信息,减少服务器资源的浪费)

  • Session对象由服务创建;
    - 使用场景:

  • 保存一个登录用户的信息;

  • 购物车信息;

  • 在整个网站中经常会使用的数据,我们将它保存在Session中;
    使用Session:
    在这里插入图片描述
    会话自动过期:web.xml配置
    在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值