美文网首页JavaWeb
JavaWeb-023-HttpSession接口中的方法

JavaWeb-023-HttpSession接口中的方法

作者: 53b3f4658edc | 来源:发表于2017-12-11 17:14 被阅读12次
  • getId方法:获取会话ID
  • getCreationTime方法:返回创建Session的时间。
  • getLastAccessedTime方法:返回客户端上一次发送与此会话关联的请求的时间。
  • setMaxInactiveInterval方法:指定在 servlet 容器使此会话失效之前客户端请求之间的时间间隔,以秒为单位。负数时间指示会话永远不会超时。
  • getMaxInactiveInterval方法:返回 servlet 容器在客户端访问之间将使此会话保持打开状态的最大时间间隔,以秒为单位。
  • isNew方法:如果客户端还不知道该会话,或者客户端选择不加入该会话,则返回 true。
    • 如果客户端请求消息中返回了一个与Servlet程序当前获得的HttpSession对象的会话标识号相同的会话标识号,则认为这个HttpSession对象不是新建的。
  • invalidate方法:使此会话无效,然后取消对任何绑定到它的对象的绑定。
  • getServletContext方法:获取ServletContext对象。
  • setAttribute方法:设置属性值。
  • getAttribute方法:获取属性值。
  • removeAttribute方法:移除属性值。
  • getAttributeNames方法:返回包含绑定到此会话的所有对象的名称的 String 对象的 Enumeration。


    微信公众号:JavaWeb架构师

测试代码

index.jsp

<%@ 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>Insert title here</title>
    </head>
    
    <body>
        <fieldset>
        <marquee>
            会话ID : <%= session.getId() %>
            <br />
            是新会话? : <%= session.isNew() %>
            <br />
            最大内部闲置: <%= session.getMaxInactiveInterval() %>
            <br />
            创建时间 : <%= session.getCreationTime() %>
            <br />
            最后一次访问时间 : <%= session.getLastAccessedTime() %>
        </marquee>
        
        <%
            //2.获取重新登录的username
            Object username = session.getAttribute("username") == null ? "" : session.getAttribute("username"); 
        %>
        <form action="hello.jsp" method="post"> 
            <table>
                <tr>
                    <td><label for="userID">用户名:</label></td>
                    <td><input type="text" name="username" value="<%=  username%>"  id="userID" /></td>
                </tr>
                <tr>
                    <td></td>
                    <td><input type="submit" value="登录" /></td>
                </tr>               
            </table>
        </form>
        </fieldset>
    </body>
</html>

hello.jsp

<%@ 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>Insert title here</title>
    </head>
    
    <body>
        <fieldset>
        <marquee behavior="alternate">
            会话ID : <%= session.getId() %>
            <br />
            是新会话? : <%= session.isNew() %>
            <br />
            最大内部闲置: <%= session.getMaxInactiveInterval() %>
            <br />
            创建时间 : <%= session.getCreationTime() %>
            <br />
            最后一次访问时间 : <%= session.getLastAccessedTime() %>
        </marquee>
        <details>
            <summary>你好!</summary>
            <%= request.getParameter("username") %>
        </details>
        <%
            //1.设置会话的属性值,想在重新登录的页面能直接显示上一次的登录名
            session.setAttribute("username", request.getParameter("username"));
        %>
        <a href="index.jsp"> 重新登录 </a>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
        <a href="logout.jsp">注销</a>
        </fieldset>
    </body>
</html>

logout.jsp

<%@ 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>Insert title here</title>
    </head>
    
    <body>
        <fieldset>
        <marquee behavior="alternate">
            会话ID : <%= session.getId() %>
            <br />
            是新会话? : <%= session.isNew() %>
            <br />
            最大内部闲置: <%= session.getMaxInactiveInterval() %>
            <br />
            创建时间 : <%= session.getCreationTime() %>
            <br />
            最后一次访问时间 : <%= session.getLastAccessedTime() %>
        </marquee>
        
        <details>
            <summary>再见</summary>
            <%= session.getAttribute("username") %>
        </details>
        <%
            //销毁session
            session.invalidate();
        %>
        </fieldset>
    </body>
</html>
微信公众号:JavaWeb架构师

其它

  • 源码下载
关注下方公众号,回复:javaweb_course.code
完整教程PDF版本下载

相关文章

  • JavaWeb-023-HttpSession接口中的方法

    getId方法:获取会话ID getCreationTime方法:返回创建Session的时间。 getLastA...

  • java中有关接口和抽象类问题

    1.接口 接口中不能有方法体接口中不能存在构造方法接口中的方法默认修饰为public abstract接口中的变量...

  • 接口、lambda表达式与内部类

    接口 接口的概念接口使用interface关键字来定义。 接口中的所有方法自动地属于public。 接口的特性接...

  • 接口的变化

    1、JDK8之后对接口做了增加,接口中可以有默认方法和静态方法 2、接口中默认方法的语法规则 3、接口中静态方法的...

  • 单例模式

    接口中声明的方法都是抽象方法。接口中的方法都是public的。 接口也可以定义成员变量。接口中的成员变量都是pub...

  • mybatis Example 使用方法

    一、mapper接口中的方法解析 mapper接口中的函数及方法 方法 功能说明 二.example实例解析...

  • 接口

    接口基本语法(一) 使用interface定义 接口中的方法都是抽象方法 接口中的方法都是public权限 接口基...

  • 八 接口中的默认方法与静态方法

    一、接口中的默认方法 Java 8中允许接口中包含具有具体实现的方法,该方法称为“默认方法”,默认方法使用 def...

  • 无显OTG配置虚谷,局域网访问Jupyter Notebook

    1、接虚谷电源,其接口在短引脚排和miniHDMI接口中间。 2、接OTG(在两个USB接口中间),OTG一定要用...

  • Blocking接口中的方法

    阻塞队列一共有四套方法分别用来进行insert、remove和examine,当每套方法对应的操作不能马上执行时会...

网友评论

    本文标题:JavaWeb-023-HttpSession接口中的方法

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