在服务器上,通过Session来区分每一个上网用户
用户只要一连接到服务器,则立刻分配一个Session给用户
Session主要方法:
1 服务器上通过Session来分别不同的用户-->Session ID
任何连接到服务器上的用户,服务器都会位之分配唯一的一个不会重复的Session ID
Session ID是由服务器统一管理的,人为不能控制
方法:session.getID();
长度:32
2 判断是否是新的Session
public boolean isNew();
判断当前的Session是否是新建立的Session
3 Session的属性设置
设置属性:public void setAttribute(String name,Object value)
取得属性:public Object getAttribute(String name)
删除属性:pbulic void removeAttribute(String name)
4 登陆验证
通过Session能够对用户是否登陆做出验证
public void putValue(String name,Object)-->setAttribute
public Object getValue(String name)-->getAttribute
public removeValue(String name)-->removeAttribute
此三个方法已经过时,不建议再使用
注销用户:让用户的Session失效
如果Session失效,则在Session所保留的全部操作也会消失
public void invalidate()使Session失效(手工)
如果Session长时间不被使用,则也会自动失效
5 得到Session的创建时间
public long getCreationTime()
此方法返回long类型,通过new Date()可以取得一个完成时间
取得用户最后操作的时间:public long getLastAccessedTime();
6 总结
Session将信息保存在服务器上,而Cookie保存在客户端上
Session比Cookie更安全,Session比Cookie更占资源
开发原则:Session要尽量少用--尽量少向Session中保存信息
session使用了Cookie的机制,如果Cookie被禁用,则Session也无法使用,因为客户端的session ID以cookie形式,保存在了客户端的内存当中,这个时候我们可以通过url重写,来保证session的有效性.
重写url的方法如下
resp.encodeURL(request.getRequestURL().toString());
重写完URL之后,跳转的时候,看看浏览器的地址变化吧^-^
=====================================
在Java Servlet API中引入session机制来跟踪客户的状态。session指的是在一段时间内,单个客户与Web服务器的一连串相关的交互过程。在一个session中,客户可能会多次请求同一个网页,也有可能请求访问各种不同的服务器资源。例如在电子邮件应用中,从一个客户登录到电子邮件系统开始,经过收信,写信,和发信等,直至退出邮件系统,整个过程为一个session。再比如,在网上书店应用中,从一个客户开始购物,到最后结账,整个过程为一个session。
会话的创建:HttpSession session = request.getSession(boolean value);
HttpSession session = request.getSession();
会话的使用:javax.servlet.http.HttpSession接口中定义的方法,我们常用的是有关进行数据存取的方法。
session.setAttribute(String name , Object value);
session.getAttribute(String name);
分享到:
相关推荐
JavaEE源代码 Application_Session_RequestJavaEE源代码 Application_Session_RequestJavaEE源代码 Application_Session_RequestJavaEE源代码 Application_Session_RequestJavaEE源代码 Application_Session_...
NULL 博文链接:https://guocc.iteye.com/blog/1209515
NULL 博文链接:https://sunfish.iteye.com/blog/1491599
JavaEE Struts2利用tokenSession防止重复提交
本篇文章主要介绍了JAVAEE中用Session简单实现购物车功能示例代码,非常具有实用价值,需要的朋友可以参考下。
通过xml文件配置数据库连接信息 PO类和数据库表的映射关系通过xml文件配置 模拟Hibernate中Session类的save()、delete()、update()和get()方法
mvc和struts专题,jdbc和数据源专题,bookstore需求分析,cookie和session专题,session详解,javabean专题,tomcat中数据源的配置和使用,servlet过滤器和jsp内置对象专题等专题分析,对于学习javaee帮助是很大的,...
java EE 购物车
JavaEE基础JSP的9个内置对象.1,out: 2,request: 3,response: 4,session: 5,pageContext: 6,application: 7,config: 8,page: 9,exception:
学了 ConcurrentHashMap 却不知如何应用?... Session 保存数据所使用的数据结构是 ConcurrentHashMap , 如你在图上看到的我们往 Session 中保存了一个msg 为什么需要使用 ConcurrentHashMap 呢?原
JavaEE5学习笔记05-EJB之会话Bean总结...
JAVAEE7 有状态会话bean项目,源代码,EJB3.2,JSF2.2,stateful sessionBean(环境:netbeans8.1,NetBeans自带glassfish4.1,JDK7) 可以用于初学者学习有状态会话bean 下载后,解压,直接导入netbeans8.1即可
那么在 MyServlet 中可以使用( )方法把属性 name 的值取出来。 A. String str=request.getAttribute("name"); B. String str=(String)request.getAttribute("name"); C. String str=(String)session.getAttribute...
Chapter 2: EJB Session Beans ............................................................................................... 15 Chapter 3: Entities and the Java Persistence API (JPA) ....................
(2)验证码、购物车、聊天室(session和appliction):http://172.16.26.242:8080/zonghe2/ (3)Javabean、分页和批量删除:http://172.16.26.242:8080/zonghe3/login.html (4)数据库增删改查(servlet+mysql)...
动力节点推出的Java视频教程首先简单介绍了Cookie,及在火狐浏览器下如何查看Cookie,然后详细讲解了在JavaEE中如何使用Cookie,及Cookie的禁用。还讲解了Session对象的创建及Session域;其次详细讲解了Session的...
javaEE通过MVC模式实现注册登入案例的myeclipse工程,设计MVC设计结构,数据库操作,等等。完整的工程代码。博客:http://blog.csdn.net/fengyuwuzu0519/article/details/75174713
教程名称: 【动力节点】Java经典教程_Servlet视频教程之Cookie动力节点推出的Java视频教程首先简单介绍了Cookie,及在火狐浏览器下如何查看Cookie,然后详细讲解了在JavaEE中如何使用Cookie,及Cookie的禁用。...
javaee-api-7.0.jar