您的位置:首页 > Web前端 > JavaScript

JSP学习笔记(七):session

2015-08-12 21:35 483 查看
JSP session用法

<%@page contentType="text/html;charset=GB2312"%>
<html>
<head>  </head>
<body>
<%String s = session.getId(); //获取session ID号  %>
<p>你的session对象ID是:</p>
<%=s %>  <%!
int Num = 0; //定义前面要加!号
synchronized void countPeople() { //同步方法
Num++;
}
%>
<%
if (session.isNew()) { //判断是否为新用户
countPeople();
String str = String.valueOf(Num);
session.setAttribute("count", str); //将str 添加到session对象中
}
%>
<p>      你是第
<%=(String)session.getAttribute("count")%>      个访问本站的人
</p>
<!--将session对象的count值取出-->
</body>
</html>


Session对象:是用来分别保存每一个用户信息的对象,以便于跟踪用户的操作状态.Session的信息保存在服务端,Session的ID保存在客户机的Cookie中.事实上,在许多服务器上,如果浏览器支持Cookies的话就直接使用Cookies.但是如果不支持或废除了Cookies的话就自动转化为URL-rewriting , Session自动为每一个流程提供了方便地存储信息的方法.不同的用户对应的Session对象一般是不同的.例如当用户登录站点时,系统就会为他建立一个与其他不相的Session对象,以便于区别其他用户.这个Session对象记录该用户的个人信息,而当该用户退出网站时,该Session对象就会随之消失.

关于session.isNew();一般返回true,因为jsp中第一次访问时会自动创建一个session。自动执行的代码如下:

HttpSession session=request.getSession();


主要方法:

1.getAttribute( String name )

获取指定名字name相联系的信息.

2.getAttributeNames()

返回Session对象中存储的每一个属性对象,其结果为一个类举的实例

3.getCreationTime()

返回Session被创建的时间.最小单位为千分之一秒.

4.getId()

此方法返回惟一的标识,这些标识为每个Session而产生.当只有一个单一的值与一个Session联合时,或当日志信息与先前的Session有关时,它被当做键名用.

5.GetLastAccessedTime()

返回当前Session对象最后被客户发送的时间,最单位为千分之一秒.

6.GetMaxInactiveInterval()

返回总时间(秒),负值表示Session永远不会超时.该时间为该Session对象的生存时间.

7.removeAttribute( String name )

删除与提定名字name的相联系的信息.

8.setAttribute( String name , java.lang.Object value )

设置指定名字name的属性值value,并将之存储在Session对象中.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: