• Session、Cookie2


    Session、Cookie2

    Cookie 是服务端在 HTTP 响应中附带传给浏览器的⼀个⼩⽂本⽂件,⼀旦浏览器保存了某个 Cookie, 在之后的请求和响应过程中,会将此 Cookie 来回传递,这样就可以通过 Cookie 这个载体完成客户端 和服务端的数据交互。

    1.Cookie常见操作

    创建cookie

    //创建一个Cookie
    Cookie cookie=new Cookie("name","zhangsan");
    response.addCookie(cookie);
    

    读取cookie

    //读取Cookie
    //读取Cookie  只有这一个方法  拿出来是一个Cookie数组
    Cookie[] cookies=request.getCookies();
    for(Cookie cookie:cookies){
        //输出cookie的name
        out.write(cookie.getName());
        out.write("=");
        out.write(cookie.getValue());
        out.write("<br/>");
        //write 只能输出String类型  调用toString 转成String类型。
        out.write(cookie.toString());
        out.write("<br/>");
    }
    

    2.Cookie的常用方法

    void setMaxAge(int age) 设置 Cookie 的有效时间,单位为秒

    int getMaxAge() 获取 Cookie 的有效时间

    String getName() 获取 Cookie 的 name

    String getValue() 获取 Cookie 的 value

    Session和Cookie的区别

    session:保存在服务器 保存的数据是 Object 会随着会话的结束⽽销毁 保存重要信息

    cookie:保存在浏览器 保存的数据是 String 可以⻓期保存在浏览器中,⽆会话⽆关 保存不重要信息

    存储⽤户信息:

    1. session:setAttribute("name","admin") 存 getAttribute("name") 取

    ⽣命周期:服务端:只要 WEB 应⽤重启就销毁,客户端:只要浏览器关闭就销毁。 退出登录 :session.invalidate()

    ​ 2.cookie:response.addCookie(new Cookie(name,"admin")) 存

    //取
    Cookie[] cookies=request.getCookies();
    for(Cookie cookie:cookies){
        //输出cookie的name
        out.write(cookie.getName());
        out.write("=");
        out.write(cookie.getValue());
        out.write("<br/>");
    

    ⽣命周期:不随服务端的重启⽽销毁,客户端:默认是只要关闭浏览器就销毁,我们通过 setMaxAge() ⽅法设置有效期,⼀旦设置了有效期,则不随浏览器的关闭⽽销毁,⽽是由设置的时间来决定。

    退出登录:setMaxAge(0)

  • 相关阅读:
    [ffmpeg 扩展第三方库编译系列] 关于 mingw32 下编译libcaca
    新版本的tlplayer for android ,TigerLeapMC for windows发布了
    tlplayer 所有平台版本支持水印叠加
    更新Windows ActiveX,Ios
    Linux批量“解压”JAR文件
    Linux进阶路线
    30个实用的Linux find命令示例
    Redhat 无线(Wifi)上网命令行配置
    PLSQL developer常用技巧
    Hibernate4.3.5搭建Log4j日志环境
  • 原文地址:https://www.cnblogs.com/wind-and-sky/p/14212751.html
Copyright © 2020-2023  润新知