• Session概念


    Session是用来将数据存储与服务器端的技术

    session中保存的是对象

    获得Session对象:

    HttpSession session = request.getSession();

    session会开辟一块区域来区分谁是谁,服务器会为每次会话建立一个sessionId,每个客户会跟一个sessionID对应。并不是关闭浏览器就结束了本次会话,通常是用户执行“退出”操作或者会话超时时才会结束。

    session不能区分路径,同一个用户在访问一个网站期间,所有的session在任何一个地方都可以访问到

    Session也是一个域对象,Session也是存储数据的区域对象。

    session.setAttribute(String name,Object obj);

    session.getAttribute(String name);

    session.removeAttribute(String name);

    package com.oracle.demo01;
    
    import java.io.IOException;
    import javax.servlet.ServletException;
    import javax.servlet.http.Cookie;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import javax.servlet.http.HttpSession;
    
    public class SessionServlet extends HttpServlet {
    
    	public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    		//获取Session对象
    		HttpSession session=request.getSession();
    		//向Session域中存储数据
    		session.setAttribute("goods","奶瓶");
    		//获取JSESSIONID
    		String id=session.getId();
    		//创建Cookie
    		Cookie cookie=new Cookie("JSESSIONID",id);
    		cookie.setPath("/WEB08");
    		cookie.setMaxAge(60*3);
    		//发送Cookie
    		response.addCookie(cookie);
    		response.getWriter().write("JSESSIONID"+id);
    	}
    
    	public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    		doGet(request, response);
    	}
    }
    

     Session对象的生命周期:第一次执行request.getSession()时就会创建

    销毁:服务器关闭的时候,session过期30分钟时,从不操作服务器开始计算时间30分钟。

    可以在web.xml里面配置

    <session-config>

            <session-timeout>30</session-timeout>

    </session-config>

    手动销毁session

    session.invalidate();

    作用范围:
    默认是在一次会话中,一次会话中任何资源公用一个session对象

     

  • 相关阅读:
    深入PHP内核之全局变量
    关于PHP中的opcode
    深入PHP内核之opcode handler
    virtual memory exhausted: Cannot allocate memory
    Nginx配置error_page 404错误页面
    PHP 与 UTF-8
    define() vs const 该如何选择?
    CentOS安装配置Samba
    当···时发生了什么?
    PHP中curl的使用
  • 原文地址:https://www.cnblogs.com/awdsjk/p/11145928.html
Copyright © 2020-2023  润新知