美文网首页
Http会话(cookie&session)

Http会话(cookie&session)

作者: 菜鸟要逆袭 | 来源:发表于2021-11-08 00:06 被阅读0次

http会话

从打开一个浏览器访问某个站点,到关闭这个浏览器的整个过程,称为一次会话。会话技术就是记录这次会话中客户端的状态和数据的

cookie技术

public class CookieDemo extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        /*一、服务器发送给客户端一个cookie*/
        /*1.创建cookie,不能存储中文 */
        Cookie cookie = new Cookie("name","tom");
        /*
        * 2.设置cookie在客户端持久化时间
        * 注意:如果不设置持久时间,cookie数据存储到浏览器内存中,浏览器关闭,cookie信息销毁
        * 如果设置持久化时间,cookie信息就会持久化到浏览器的硬盘文件夹中
        * 单位:秒,超过这个时间,浏览器自动清除cookie信息
        * 如果设置为0,且路径和、同名键值的cookie相同,则为删除cookie操作
        * */
        cookie.setMaxAge(10*60); //
        /*
        * 3.设置携带路径
        * 如果不设置,那cookie信息访问产生该cookie的web资源的所有路径都会有cookie
        * */
        cookie.setPath(request.getContextPath());
        /*4.向客户端发送cookie信息*/
        response.addCookie(cookie);


        /*二、服务器获取客户端cookie*/
        Cookie[] cookies = request.getCookies();
        for(Cookie c:cookies){
            if(cookie.getName().equals("name")){
                System.out.println(c.getValue());
            }
        }

    }

    @Override
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        super.doPost(request, response);
    }
}

session技术(常结合cookie使用)

public class SessionDemo extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        /*得到session对象*/
        HttpSession session = request.getSession();
        /*第一次访问,服务器创建新的session,如果存在则不会创建新的session*/
        if(session.isNew()){
            System.out.println("当前session为服务器新创建的"+session.getId());
        }
        /*向session对象中放置数据*/
        session.setAttribute("sex","男");
        /*取session数据*/
        String sex = (String)session.getAttribute("sex");
        /*移除session中数据*/
        session.removeAttribute("sex");
    }

    @Override
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        super.doPost(request, response);
    }
}

session对象的生命周期

/*创建:第一次执行request.getSession()时*/
request.getSession();
/*手动销毁*/
session.invalidate();
/*
* session过期/失效(默认30分钟,计算方式:从不操作服务器端资源开始计时)
* session过期时间配置在web.xml中配置,配置如下
*/
<web-app>
  ...
  <session-config>
    <session-timeout>60</session-timeout>
  </session-config>
  ...
</web-app>

相关文章

  • Http会话(cookie&session)

    http会话 从打开一个浏览器访问某个站点,到关闭这个浏览器的整个过程,称为一次会话。会话技术就是记录这次会话中客...

  • day_1_12 cookie&session

    cookie&session都是会话跟踪技术. Cookie Cookie: 是由服务器创建, 然后通过响应头发送...

  • Cookie&Session

    Cookie&Session Cookie 一、概念 是一种客户端会话技术,其实就是保存在我们客户端上的一小份数据...

  • 第15讲.Cookie&Session

    Cookie&Session 学习摘要: 今天主要是讲解Cookie和Session的问题。 重点深入理解HTTP...

  • PHP全栈学习笔记9

    php的会话控制,什么是会话控制,http等。什么是会话控制思想,http协议。 cookie 和 session...

  • PHP全栈学习笔记9

    php的会话控制,什么是会话控制,http等。什么是会话控制思想,http协议。 cookie 和 session...

  • http会话维持

    1.背景:在做接口自动测试的时候,会遇到很多接口需要先登录,通常有3中方式处理,@1login接口会返回token...

  • cookie&session会话技术原理及运用

    会话技术 1.会话:一次会话中包含多个请求和响应一次会话:浏览器第一次给服务器资源发送请求,会话建立,直到有一方被...

  • Django测试开发学习笔记(二)

    用户认证 1. cookie&session cookie:因为http请求是无状态的,第一次和服务器连接后并且登...

  • JavaEE-8-会话跟踪技术Cookie&Session

    一、Cookie 整理自:https://www.cnblogs.com/xdp-gacl/p/3803033.h...

网友评论

      本文标题:Http会话(cookie&session)

      本文链接:https://www.haomeiwen.com/subject/ppvezltx.html