//session给用户一种标志,让用户可以在不同页面以及网站中都有一个特殊的标记
public interface HttpSession {
    /**
     * Returns the time when this session was created, measured
     * in milliseconds since midnight January 1, 1970 GMT.
     * @return				a <code>long</code> specifying
     * 	when this session was created, expressed in  milliseconds since 1/1/1970 GMT
     * @exception IllegalStateException	if this method is called on an
     *					invalidated session
     */
	//session创建时间
    public long getCreationTime();
    /**
     * Returns a string containing the unique identifier assigned
     * to this session. The identifier is assigned
     * by the servlet container and is implementation dependent.
     * @return				a string specifying the identifier
     *					assigned to this session
     * @exception IllegalStateException	if this method is called on an
     *					invalidated session
     */
    //session id
    public String getId();
    /**
     * Returns the last time the client sent a request associated with
     * this session, as the number of milliseconds since midnight
     * January 1, 1970 GMT, and marked by the time the container received the request.
     * <p>Actions that your application takes, such as getting or setting
     * a value associated with the session, do not affect the access time.
     * @return				a <code>long</code>
     *					representing the last time
     *					the client sent a request associated
     *					with this session, expressed in
     *					milliseconds since 1/1/1970 GMT
     * @exception IllegalStateException	if this method is called on an
     *					invalidated session
     */
    //最近一次客户端发送与这个session相关联的请求的时间
    public long getLastAccessedTime();
    /**
    * Returns the ServletContext to which this session belongs.
    * @return The ServletContext object for the web application
    * @since 2.3
    */
    //session所属于的ServletContext
    public ServletContext getServletContext();
    /**
     * Specifies the time, in seconds, between client requests before the
     * servlet container will invalidate this session.  A negative time
     * indicates the session should never timeout.
     * @param interval		An integer specifying the number of seconds
     */
    //session失效时间
    public void setMaxInactiveInterval(int interval);
   /**
    * Returns the maximum time interval, in seconds, that
    * the servlet container will keep this session open between
    * client accesses. After this interval, the servlet container
    * will invalidate the session.  The maximum time interval can be set
    * with the <code>setMaxInactiveInterval</code> method.
    * A negative time indicates the session should never timeout.
    * @return		an integer specifying the number of
    *			seconds this session remains open
    *			between client requests
    * @see		#setMaxInactiveInterval
    */
    //获得失效时间
    public int getMaxInactiveInterval();
   /**
    * @deprecated 	As of Version 2.1, this method is
    *			deprecated and has no replacement.
    *			It will be removed in a future
    *			version of the Java Servlet API.
    */

    public HttpSessionContext getSessionContext();
    /**
     * Returns the object bound with the specified name in this session, or
     * <code>null</code> if no object is bound under the name.
     * @param name		a string specifying the name of the object
     * @return			the object with the specified name
     * @exception IllegalStateException	if this method is called on an
     *					invalidated session
     */
    //session中name的对象
    public Object getAttribute(String name);
    /**
     * @deprecated 	As of Version 2.2, this method is
     * 			replaced by {@link #getAttribute}.
     * @param name		a string specifying the name of the object
     * @return			the object with the specified name
     * @exception IllegalStateException	if this method is called on an
     *					invalidated session
     */

    public Object getValue(String name);
    /**
     * Returns an <code>Enumeration</code> of <code>String</code> objects
     * containing the names of all the objects bound to this session.
     * @return			an <code>Enumeration</code> of
     *				<code>String</code> objects specifying the
     *				names of all the objects bound to
     *				this session
     * @exception IllegalStateException	if this method is called on an
     *					invalidated session
     */
    //获得所有属性的枚举
    public Enumeration getAttributeNames();
    /**
     * @deprecated 	As of Version 2.2, this method is
     * 			replaced by {@link #getAttributeNames}
     * @return				an array of <code>String</code>
     *					objects specifying the
     *					names of all the objects bound to
     *					this session
     * @exception IllegalStateException	if this method is called on an
     *					invalidated session
     */

    public String[] getValueNames();
    /**
     * Binds an object to this session, using the name specified.
     * If an object of the same name is already bound to the session,
     * the object is replaced.
     * <p>After this method executes, and if the new object
     * implements <code>HttpSessionBindingListener</code>,
     * the container calls
     * <code>HttpSessionBindingListener.valueBound</code>. The container then
     * notifies any <code>HttpSessionAttributeListener</code>s in the web
     * application.
     * <p>If an object was already bound to this session of this name
     * that implements <code>HttpSessionBindingListener</code>, its
     * <code>HttpSessionBindingListener.valueUnbound</code> method is called.
     * <p>If the value passed in is null, this has the same effect as calling
     * <code>removeAttribute()<code>.
     * @param name			the name to which the object is bound;
     *					cannot be null
     * @param value			the object to be bound
     * @exception IllegalStateException	if this method is called on an
     *					invalidated session
     */
    //设置属性
    public void setAttribute(String name, Object value);
    /**
     *
     * @deprecated 	As of Version 2.2, this method is
     * 			replaced by {@link #setAttribute}
     *
     * @param name			the name to which the object is bound;
     *					cannot be null
     *
     * @param value			the object to be bound; cannot be null
     *
     * @exception IllegalStateException	if this method is called on an
     *					invalidated session
     *
     */
    public void putValue(String name, Object value);
    /**
     * Removes the object bound with the specified name from
     * this session. If the session does not have an object
     * bound with the specified name, this method does nothing.
     * <p>After this method executes, and if the object
     * implements <code>HttpSessionBindingListener</code>,
     * the container calls
     * <code>HttpSessionBindingListener.valueUnbound</code>. The container
     * then notifies any <code>HttpSessionAttributeListener</code>s in the web
     * application.
     * @param name				the name of the object to
     *						remove from this session
     * @exception IllegalStateException	if this method is called on an
     *					invalidated session
     */
    //删除属性
    public void removeAttribute(String name);
    /**
     * @deprecated 	As of Version 2.2, this method is
     * 			replaced by {@link #removeAttribute}
     * @param name				the name of the object to
     *						remove from this session
     * @exception IllegalStateException	if this method is called on an
     *					invalidated session
     */
    public void removeValue(String name);
    /**
     * Invalidates this session then unbinds any objects bound
     * to it.
     * @exception IllegalStateException	if this method is called on an
     *					already invalidated session
     */
    //session无效
    public void invalidate();
    /**
     * Returns <code>true</code> if the client does not yet know about the
     * session or if the client chooses not to join the session.  For
     * example, if the server used only cookie-based sessions, and
     * the client had disabled the use of cookies, then a session would
     * be new on each request.
     * @return 				<code>true</code> if the
     *					server has created a session,
     *					but the client has not yet joined
     * @exception IllegalStateException	if this method is called on an
     *					already invalidated session
     */
    //
    public boolean isNew();
}

最新文章

  1. 第三天--html列表
  2. springmvc登陆拦截案例
  3. PV、UV、IP之间的区别与联系
  4. 结合Apache和Tomcat实现集群和负载均衡
  5. 拓扑排序 +Floyd(poj 1094)
  6. 转 java int与Integer的区别
  7. Hibernate之基于主键映射的一对一关联关系
  8. MVC神韵---你想在哪解脱!(十二)
  9. 基于SAE+CodeIgniter3.0+管理端angularjs+前台amazeui的多用户博客系统V1.0--系统设计(一)
  10. python中使用mahotas包实现高斯模糊
  11. json时间格式的互换
  12. linux命令积累(Ubuntu)
  13. TCP/IP笔记(二)TCP/IP简介
  14. Mysql清理二进制日志的技巧
  15. 201521123107 《Java程序设计》第3周学习总结
  16. Excel、Exchange 和 C# (摘要)
  17. [Err] 1093 - You can't specify target table 's' for update in FROM clause
  18. 使用mybatis-generator插件自动生成代码的步骤
  19. 剑指offer-合并两个排列的链接
  20. javascript 模块化学习:Class打包出来无法实例化问题

热门文章

  1. 空格哥的第一篇Blog
  2. python初学day01
  3. MST:Out of Hay(POJ 2395)
  4. Oracle10g_Dataguard__161031
  5. ajax中文传送到模板显示为null
  6. Ajax请求中带有IPv6地址后的百分号的问题
  7. canvas绘制直线和多边形基本操作
  8. Spark Streaming揭秘 Day29 深入理解Spark2.x中的Structured Streaming
  9. 18. 4Sum
  10. js事件处理 —— 详解
  11. Windows开发中一些常用的辅助工具
  12. Java面试题之Request对象的主要方法
  13. WIN10使用管理员权限运行VS2013
  14. pyspider 启动错误
  15. js 判断整数
  16. C++标准模板库STL
  17. 【CF875F】Royal Questions 最小生成基环树森林
  18. 【kafka学习之二】Kafka集群搭建
  19. JQuery为元素添加样式的实现方法
  20. 解决方法:配置群集时# gem install redis 报错:Unable to require openssl, install OpenSSL and rebuild ruby