首先介绍:会话
一个会话就是浏览器与服务器之间的一次通话,包含浏览器与服务器之间的多次请求、响应过程
一、session
session是JSP内置对象,与浏览器一一对应,允许用户存储和提取会话状态的信息。
session对象常用方法:
类型 | 方法名称 | 说 明 |
void | setAttribute(String key,Object value) | 以key/value的形式保存对象值 |
Object | getAttribute(String key) | 通过key获取对象值 |
int | getMaxInactiveInterval() | 获取session的有效非活动时间,以秒为单位 |
String | getId() | 获取session对象的编号 |
void | invalidate() | 设置session对象失效 |
------登录处理页面的代码片断------
<%
if (rs.next()) { //如果是已注册用户
session.setAttribute("LOGINED_USER", loginedUser);
response.sendRedirect("index.jsp");
//记录用户的登录信息=保存用户的登录信息
//session.setAttribute("uname", name);//键String,值Object
//设置session的最大有效非活动时间 以秒为单位
//session.setMaxInactiveInterval(10);
//打印sessionID:BB33BF70BA53D5A928FF0AF4BD6E7511
//System.out.print(session.getId());
} else {
response.sendRedirect("login.html");
}
%>
二、cookie
Cookie是Web服务器保存在客户端的一系列文本信息。
Cookie的作用:对特定对象的追踪 统计网页浏览次数 简化登录 安全性能 容易信息泄露。
导入包
创建Cookie
parameter:用于代表cookie的名称(key)
value:用于表示当前key名称所对应的值 写入Cookie
设置Cookie属性的常用方法:
类型 | 方法名称 | 说 明 |
void | setMaxAge(int expiry) | 设置Cookie的有效期,以秒为单位 |
void | setValue(String value) | 在Cookie创建后,对Cookie进行赋值 |
String | getName() | 获取Cookie的名称 |
String | getValue() | 获取Cookie的值 |
String | getMaxAge() | 获取Cookie的有效时间,以秒为单位 |
cookie的应用:
三、session与cookie的比较
1.session是在服务器端保存用户信息,Cookie是在客户端保存用户信息
2.session中保存的是对象,Cookie保存的是字符串
3.session随会话结束而关闭,Cookie可以长期保存在客户端
4.Cookie通常用于保存不重要的用户信息,重要的信息使用session保存