精华内容
下载资源
问答
  • session对象的方法用于设置
    千次阅读
    2021-05-19 15:21:42

    session对象

    session对象用于储存特定的用户会话所需的信息
    当用户在应用程序的web页面之间跳转时,储存在session对象中的变量不会丢失,而是整个用户会话会一直存在。在请求web页面时如果用户还没有会话,web服务器将自动创建一个session对象。会话过期或被放弃后,服务器将终止该会话。

    运作方式:
    当一个用户首次访问服务器上的一个jsp页面时,jsp引擎产生一个session对象,同时分配一个String id,jsp引擎同时将这个id存放在cookie中,这样session对象和用户之间就建立一个一一对一个的联系。当用户再次访问连接该服务器的其他页面时,不在分配session对象直到浏览器关闭,服务器端该用户的session对象才会消失,再次打开浏览器将会再次分配一个新的session对象。

    setAttribute(String name ,java.lang.Object obj):用于设定指定名字的属性值,并把它存储在session中。

    name:用于指定作用域在session范围内的变量名
    obj:保存在session范围内的对象

    例:

    <%
    session.setAttribute("customer","客户")
    >%
    
    <%
    String obj =(String)session.getAttribute("customer");
    %>
    
    <%=obj%>的姓名是123
    

    输出:客户 的姓名是123

    getAttribute(String name):用于获取与指定名字相联系的属性,如果属性不存在则返回null。
    实例如上
    简单使用:

    String na = request.getParameter("Loginname")
    session.setAttribute("name","na")
    String 姓名 = String)session.getAttribute("name");
    
    更多相关内容
  • ASP(Active Server Pages)技术的Session对象用于存储用户在对话期间的私有信息。当前用户的Session对象中定义的变量和对象能在页面之间共享,但是不能为应用中其他用户所访问,因此在用ASP开发网络应用程序时,...
  • java中session对象及其常用方法

    千次阅读 2021-03-03 10:51:00
    session对象用于在会话范围内,记录每个客户端的访问状态,以便于跟踪每个客户端的操作状态。在会话中存储的信息,在浏览器发出后续请求时可以获取这些会话的有效数据。在jsp页面中可以直接使用session对象,也可以...

    session对象用于在会话范围内,记录每个客户端的访问状态,以便于跟踪每个客户端的操作状态。在会话中存储的信息,在浏览器发出后续请求时可以获取这些会话的有效数据。

    在jsp页面中可以直接使用session对象,也可以通过pageContext.getSession()或request.getSession()方法重新获取session对象。

    session对象可以保存用户的登录信息,实现购物车功能等。

    HTTP协议是一种无状态协议。客户向服务器发出请求request,然后服务器返回响应response,连接就被关闭了。在服务器端不保留连接的有关信息,因此当下一次连接时,服务器端已没有以前的连接信息了,无法判断这一次连接和以前的连接是否属于同一个客户。因此,必须使用会话记录有关连接的信息。

    从客户打开浏览器连接到服务器,到客户关闭浏览器离开这个服务器,称做一个会话。当客户访问服务器是,可能会反复连接这个服务器上的几个页面、反复刷新一个页面或不断地向一个页面提交信息等,服务器应当通过某种方法知道这是同一个客户,这时就需要session对象。

    session的工作原理如下:

    1.客户首次访问服务器的一个页面时,服务器就会为该客户分配一个session对象,同时为该session对象指定一个唯一的ID,并且将该ID号发送到客户端并写入到cookie中,使得客户端与服务器端的session建立一一对应关系。

    2.当客户继续访问服务器上的其他资源时,服务器不再为该客户分配新的session对象,直到客户端浏览器关闭、超时或调用session的invalidate()方法使其失效,客户端与服务器的会话结束。

    3.当客户重新打开浏览器访问网站时,服务器会重新为客户分配一个session对象,并重新分配sessionID。

    session对象主要用于属性操作和会话管理,常用方法如下:

    1.public void setAttribute(Sting name, Object value),设定指定名字的属性的值,并将它添加到session会话范围内,如果这个属性是会话范围内存在,则更改该属性的值。

    2.public Object getAttribute(String name),在会话范围内获取指定名字的属性的值,返回值类型为object,如果该属性不存在,则返回null。

    3.public void removeAttribute(String name),删除指定名字的session属性,若该属性不存在,则出现异常。

    4.public void invalidate(),使session失效。可以立即使当前会话失效,原来会话中存储的所有对象都不能再被访问。

    5.public String getId( ),获取当前的会话ID。每个会话在服务器端都存在一个唯一的标示sessionID,session对象发送到浏览器的唯一数据就是sessionID,它一般存储在cookie中。

    6.public void setMaxInactiveInterval(int interval),设置会话的最大持续时间,单位是秒,负数表明会话永不失效。

    7.public int getMaxInActiveInterval(),获取会话的最大持续时间。

    8.使用session对象的

    getCreationTime()和getLastAccessedTime()方法可以获取会话创建的时间和最后访问的时间,但其返回值是毫秒,一般需要使用下面的转换来获取具体日期和时间。

    Date creationTime = new Date(session.getCreationTime());    Date accessedTime = new Date(session.getLastAccessedTime());

    contentType="text/html;charset=GBK"%>  

              session对象方法                   会话ID:

    session.getId() %>
       是否新会话:

    session.isNew() %>
       设置和获取属性对象:用户名 =    

    session.setAttribute("用户名","陈宁"); %>    

    session.getAttribute("用户名") %>

    Date creationTime = new Date(session.getCreationTime());    Date accessedTime = new Date(session.getLastAccessedTime());     %>     会话创建时间:
        上次访问时间:
        会话持续时间(s):

    session.getMaxInactiveInterval() %>

    session.setMaxInactiveInterval(12); %>     修改后的会话持续时间(s):

    session.invalidate(); %>       

    展开全文
  • jsp设置session对象的最长发呆时间

    千次阅读 2017-09-28 15:52:29
    1.新建一个Dynamic Web Project项目,里面新建一个jsp文件,整体的框架如下所示: 2.one.jsp里面的代码如下所示: ; charset=UTF-8" pageEncoding="UTF-8"%> example session

    1.新建一个Dynamic Web Project项目,里面新建一个jsp文件,整体的框架如下所示:



    2.one.jsp里面的代码如下所示:

    <%@page import="java.util.Date"%>
    <%@page import="java.text.SimpleDateFormat"%>
    <%@ page language="java" contentType="text/html; charset=UTF-8"
    	pageEncoding="UTF-8"%>
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>example</title>
    </head>
    <body>
    	<%
    		session.setMaxInactiveInterval(10);
    		boolean flag = session.isNew();
    		if (flag) {
    			out.println("欢迎您第一次访问当前web服务目录。");
    			out.println("<hr/>");
    		}
    		out.println("session允许的最长发呆时间为:" + session.getMaxInactiveInterval() + "秒。");
    		long num = session.getCreationTime();
    		Date time = new Date(num);
    		//E相当于是星期
    		SimpleDateFormat matter = new SimpleDateFormat("北京时间:yyyy年MM月dd日HH时mm分ss秒E。");
    		String strTime = matter.format(time);
    		out.println("<br/>session的创建时间为:" + strTime);
    		out.println("<br/>session的id为:" + session.getId() + "。");
    	%>
    </body>
    </html>

    3. 在浏览器里面输入http://localhost:8080/meme/one.jsp运行之后得到的结果如下所示:


    展开全文
  • Java Session对象及其常用方法

    千次阅读 2016-11-15 16:24:24
    session对象主要用于属性操作和会话管理 1.public void setAttribute(Sting name, Object value);//设定指定名字的属性的值,并将它添加到session会话范围内,如果该属性在会话范围内存在,则更改该属性的值。 ...

    HTTP协议是一种无状态协议。客户向服务器发出请求request,然后服务器返回响应response,连接就被关闭了。在服务器端不保留连接的有关信息,因此当下一次连接时,服务器端已没有以前的连接信息了,无法判断这一次连接和以前的连接是否属于同一个客户。因此,必须使用会话记录有关连接的信息。
    从客户打开浏览器连接到服务器,到客户关闭浏览器离开这个服务器,称做一个会话。当客户访问服务器时,可能会反复连接这个服务器上的几个页面、反复刷新一个页面或不断地向一个页面提交信息等,服务器应当通过某种方法知道这是同一个客户,这时就需要session对象。session对象可以保存用户的登录信息,实现购物车功能等。
    在jsp页面中可以直接使用session对象,也可以通过pageContext.getSession()或request.getSession()方法重新获取session对象。

    session的工作原理

    服务器创建session出来后,会把session的id号,以cookie的形式回写给客户机,这样,只要客户机的浏览器不关,再去访问服务器时,都会带着session的id号去,服务器发现客户机浏览器带session id过来了,就会使用内存中与之对应的session为之服务。直到客户端浏览器关闭、超时或调用session的invalidate()方法使其失效,客户端与服务器的会话结束。

    Session和Cookie的主要区别

    1. Cookie是把用户的数据写给用户的浏览器。
    2. Session技术把用户的数据写到用户独占的session中。
    3. Session对象由服务器创建,开发人员可以调用request对象的。getSession方法得到session对象。

    session对象主要用于属性操作和会话管理

    1.public void setAttribute(Sting name, Object value);//设定指定名字的属性的值,并将它添加到session会话范围内,如果该属性在会话范围内存在,则更改该属性的值。
    2.public Object getAttribute(String name);//在会话范围内获取指定名字的属性的值,返回值类型为object,如果该属性不存在,则返回null。
    3.public void removeAttribute(String name);//删除指定名字的session属性,若该属性不存在,则出现异常。
    4.public void invalidate();//使session失效。可以立即使当前会话失效,原来会话中存储的所有对象都不能再被访问。
    5.public String getId();//获取当前的会话ID。每个会话在服务器端都存在一个唯一的标示sessionID,session对象发送到浏览器的唯一数据就是sessionID,它一般存储在cookie中。
    6.public void setMaxInactiveInterval(int interval);//设置会话的最大持续时间,单位是秒,负数表明会话永不失效。
    7.public int getMaxInActiveInterval();//获取会话的最大持续时间。
    8.使用session对象的getCreationTime()和getLastAccessedTime()方法可以获取会话创建的时间和最后访问的时间,但其返回值是毫秒,一般需要使用下面的转换来获取具体日期和时间。
    Date creationTime = new Date(session.getCreationTime());
    Date accessedTime = new Date(session.getLastAccessedTime());
    9.使用session.isNew()判断session是不是新创建的

    //使用request对象的getSession()获取session,如果session不存在则创建一个
    HttpSession session = request.getSession();
    //获取session的Id
    String sessionId = session.getId();
    //判断session是不是新创建的
    if (session.isNew()) {
        response.getWriter().print("session创建成功,session的id是:"+sessionId);
    }else {
        response.getWriter().print("服务器已经存在session,session的id是:"+sessionId);
    }

    session对象的销毁时机

    session对象默认30分钟没有使用,则服务器会自动销毁session,在web.xml文件中可以手工配置session的失效时间,例如:

    <?xml version="1.0" encoding="UTF-8"?>
    <web-app version="2.5" 
        xmlns="http://java.sun.com/xml/ns/javaee" 
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
        xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
        http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
      <display-name></display-name>
      <welcome-file-list>
        <welcome-file>index.jsp</welcome-file>
      </welcome-file-list>
      <!-- 设置Session的有效时间:以分钟为单位-->
        <session-config>
            <session-timeout>15</session-timeout>
        </session-config>
    </web-app>

    当需要在程序中手动设置Session失效时,可以手工调用session.invalidate方法,摧毁session。

    HttpSession session = request.getSession();
    //手工调用session.invalidate方法,摧毁session
    session.invalidate();
    展开全文
  • session对象及其常用的方法

    千次阅读 2019-08-03 14:54:17
    session对象用于在会话范围内,记录每个客户端的访问状态,以便于跟踪每个客户端的操作状态,在会话存储的信息,在浏览器发出后续请求时可以获取这些会话的有效数据。   在jsp页面中可以直接使用session...
  • 获取session对象的两种方法

    万次阅读 2016-06-23 01:05:41
    获取session对象的两种方法1.openSession() 2.getCurrentSession(),此方法需要在hibernate.cfg.xml配置文件中添加 <property name="hibernate.current_session_context_class">thread以下为两种方法的代码:import ...
  • java设置与获取session

    万次阅读 2018-10-01 07:38:07
     session对象用于在会话范围内,记录每个客户端的访问状态,以便于跟踪每个客户端的操作状态,在会话存储的信息,在浏览器发出后续请求时可以获取这些会话的有效数据。   从客户打开浏览器连接到服务器,到客户...
  • session对象用于存储特定的用户DAO会话所需的信息 。 Session对象的引入是为了弥补HTTP协议的不足,HTTP协议是一种无状态的协议。 application是应用程序(application program)的缩写。一个应用程序通常是指能够...
  • 1、session对象概述 session对象是由服务器自动创建与用户请求相关的对象。服务器会为每一个用户创建一个session对象用来保存用户信息,跟踪用户操作。该对象内部使用Map类来保存数据,因此它的数据类型是key-value...
  • request对象、response对象、session对象

    千次阅读 2018-04-13 19:37:42
    request对象 作用:获取用户提供的信息 语法:是实现了ServletRequest接口类的一个实例 使用表单向服务器的某个JSP页面提交信息 常用方法设置编码方式:例如(用来防止汉字乱码) request.setCharacterEncoding...
  • Spring Boot 二 从Session中获取域对象的三种方法
  • session超时时间设置方法

    千次阅读 2014-05-21 11:57:22
    由于session值之前没有设置,以至于刚登录的网站,不到一分钟就超时了,总结了一下,原来是session过期的原因,以下是设置session时间的3个方法: 1. 在tomcat——>conf——>servler.xml文件中定义:    ...
  • Hibernate获取Session对象-单例模式

    千次阅读 2018-10-06 19:00:49
     在Hibernate中需要使用Session对象来完成数据的操作,那么该如何获取Session对象?我们可以通过SessionFactory来获取Session对象,我们可以将SessionFactory写成单例模式,避免创建多个SessionFactory,导致数据库...
  • 应用session对象实现用户登录

    千次阅读 多人点赞 2019-02-26 16:29:19
    session在网罗中被称为会话,由于HTTP协议是一种无状态协议,也就是当一个客户向服务器发出请求时,服务器接受请求并返回响应...通过session对象可以存储或读取客户相关的信息,如用户名,购物信息。这些可以通过se...
  • ASP.NET的内置对象:Session对象

    千次阅读 2014-07-20 16:08:42
    Session对象用于存储在多个页面调用之间特定用户的信息。Session对象只针对单一网站使用者,不同的客户端无法相互访问。Session对象中止于联机机器离线时,也就是当网站使用者关掉浏览器或超过设定Session对象的有效...
  • hibernate获取session连接对象

    千次阅读 2015-04-14 16:53:28
    所有的session连接对象都是由SessionFactory生产的。 SessiinFactory的创建有3种方式。 1.hibernate创建HibernateUtil工具类,用于初始化SessionFactory对象,这种方式是Hibernate1,2支持的,如今已经过时了...
  • 问题:session什么时候被创建? 一个常见的错误是以为 session 在有客户端访问时就被创建,然而事实是直到某 server 端程序(如 Servlet )调用HttpServletRequest.getSession(true)这样的语句时才会被创建。 在浏览...
  • Session使用方法详解

    万次阅读 2018-06-27 17:20:59
    Session的声明与使用 Session设置不同于Cookie,必须先启动,在PHP中必须调用session_start()。session_start()函数的语法格式如下: Bool session_start(void) //创建Session,开始一个会话,进行Session初始化...
  • Session超时设置的三种方式

    千次阅读 2018-02-02 10:25:57
    Session超时设置的三种方式 在Java Web开发中,Session为我们提供了很多方便,Session是由浏览器和服务器之间维护的。Session超时理解为:浏览器和服务器之间创建了一个Session,由于客户端长时间(休眠时间)没有...
  • Session对象的特点

    千次阅读 2015-10-01 15:08:07
    Session对象用于在会话范围内,记录每个客户端的访问状态,以便于跟踪每个客户端的操作状态,在会话存储的信息,在浏览器发出后续请求时可以获取这些会话的有效数据。 常用方法如下: 1).public void ...
  • 需要注意的问题是对象名的写法,包括这些对象方法的调用时也要书写正确,因为Java语言本身是大小写敏感的。 4.1 JSP内置对象概述 对象名称 衍 生 类 功 能 说 明 request javax.servlet.ServletRequest....
  • 设置session失效时间的三种方法

    万次阅读 2015-04-25 14:35:38
    a) web app server中,如websphere里可以设置超时时间为30分钟 b)在web.xml中的session-config配置 session-timeout元素(WEB.XML文件中的元素)用来指定默认的会话超时时间间隔,以分钟为单位
  • Abandon Abandon 方法删除所有存储在 Session 对象中的对象并释放这些对象的源。如果您未明确地调用 Abandon 方法,一旦会话超时,服务器将删除这些对象 。语法 Session.Abandon注释 Abandon 方法被调用时,将按...
  • 前端网络基础 - Session

    千次阅读 2022-03-09 18:53:44
    Cookie实现身份认证的简单方案 基于Cookie实现在浏览器端保存服务器端生成的用户登录...即:服务器端在首次登录的响应中设置两个响应头Set-Cookie,分别为用户名和密码。 Cookie的安全性 cookie由于保存在浏...
  • session的invalidate方法

    万次阅读 2018-05-02 09:05:23
    方法用于 主要用于注销 调用该方法 会清空所有已定义的session 而不是清空全部session的值也就是说 定义了一个名为 user 的session 调用invalidate()方法后使用Session.getValue(“user”)。会发生Session....
  • 首先,先来了解下session对象的创建和销毁:请看:我开始以为,存在session中的数据和session是同时销毁的,错了!!session中保存的数据,比如在session中存储了一个User对象,那么浏览器关闭,这个User对象就...
  • 1.监听器知识点 简单来说,监听器是监听一个对象发生的什么事,然后监听器做出相应的反应。这就是我们的监听器,用我们专业的... 在我们的javaweb中,监听器主要负责监听这三个对象:request,session,ServletCo...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 333,140
精华内容 133,256
关键字:

session对象的方法用于设置