赞
踩
Session称为一次会话,浏览器的打开及关闭。例如:登录淘宝之后,在该浏览器上无论打开的哪个页面都属于一次会话(不需要登录了)
方法名 | 描述 |
---|---|
setAttribute(key,val) | 设置键值对 |
getAttribute(key) | 通过键获取值 |
getId() | 获取session的id |
setMaxInactiveInterval(time) | 设置session的过期时间[单位:秒](tomcat中默认配置的过期时间是30分钟) |
removeAttribute(key) | 从session中移除指定的key |
//login.jsp <% String errMsg = ""; //登录页面可能会被打开多次 Object object = session.getAttribute("errMsg"); if(object != null){//从登录失败后跳转过来的 errMsg = (String)object; } %> 错误信息:<%=errMsg%> //contorl.jsp <% //对用户名及密码进行验证(操作数据库) if("admin".equals(uname) && "admin".equals(pwd)){ //将用户的用户名存储起来作为登录成功的标识 session.setAttribute("uname",uname); //设置session的失效事件(单位:秒) session.setMaxInactiveInterval(3); //登录成功,跳转个人中心 response.sendRedirect("person.jsp"); }else{ //通过session储存错误信息 session.setAttribute("errMsg","用户名或密码错误"); //返回登陆界面,并提示错误信息 response.sendRedirect("login.jsp"); } %>
cookie是在本地进行数据存储的对象,访问速度快、效率高但是不安全
Cookie生效时间
1.值为正数时,代表了cookie的存活时长(秒为单位)
2.值为0时,代表立即清除cookie
3.值为负数时,代表cookie的生命周期与当前会话一致
<%
Cookie nameCookie = new Cookie("name",name);
//设置cookie的生效时间setMaxAge() 秒
nameCookie.setMaxAge(10);//存活十秒
response.addCookie(nameCookie);
%>
1.session是存储在服务端的,Cookie是存储在客户端
2.session数据安全,Cookie数据不安全
3.session效率较低,Cookie效率相对较高
application是全局作用域对象,也称为web的上下文对象,通常用于存储一些全局参数
方法名 | 描述 |
---|---|
setAttribute(key,val) | 设置全局参数 |
getAttribute(key) | 获取全局参数 |
<%
//设置默认的阅读量
int count = 0;
//先从全局作用域中获取存储的已访问的数量
Object obj = application.getAttribute("count");
if(obj != null){
//不能直接用int接受需要用引用数据类型 Integer
count = (Integer)object;
}
count++;
//将最新的阅读量存储到全局作用域中
application.setAttribute("count",count);
%>
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。