`
GreyPenguin
  • 浏览: 4341 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

session的理解及应用

阅读更多
本人只是转载网友的文章 希望能有所收获

在服务器上,通过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);
分享到:
评论

相关推荐

    理解HTTP session原理及应用

    详细描述了session的原理及作用,session,中文经常翻译为会话,其本来的含义是指有始有终的一系列动作/消息,比如打电话时从拿起电话拨号到挂断电话这中间的一系列过程可以称之为一个session。

    JSP内置对象 session application的应用

    jSP内置对象 session application的应用有了较深的理解,能够做出一个简单的留言板,可保存留言学会了如何使用application对象,以便网站所有用户可查看留言,可记录每个用户的名称使用session对象,以便在留言页面...

    session机制详解

    目录: 一、术语session 二、HTTP协议与状态保持 三、理解cookie机制 四、理解session机制 五、理解javax.servlet.http.HttpSession ...六、HttpSession常见问题 ...七、跨应用程序的session共享 八、总结

    cookie_session.zip

    DJango框架中cookie、session实际应用,简单的登录、跳转首页的demo。运用到cookie、session技术,初步理解cookie/session在实际当中的实际应用。通过demo实际操作来理解cookie/session

    session、cookie的跨域共享

    同时你可以通过ie、firefox去测试你对session、cookie的理解在此之前是否正确,可以简单告诉你session不是我们大都认为的在登录时候,通过request.getSession()产生的,而是你在首次访问一个应用时候,就已经产生了...

    seesion注意问题

    关于session的一点理解,以及使用session的时候需要注意的一点问题,欢迎指正,我是菜鸟!

    PHP的cookie与session原理及用法详解

    本文实例讲述了PHP的cookie与session原理及用法。分享给大家供大家参考,具体如下: 产生背景 HTTP协议是无状态的协议。一旦数据交换完毕,客户端与服务器端的连接就会关闭,再次交换数据需要建立新的连接。这就意味...

    性能测试基本知识之Session的本质

    有一点我们必须承认,大多数web应用程序都离不开session的使用。这篇文章将会结合php以及http协议来分析如何建立一个安全的会话管理机制。性能测试基本知识之Session的本质  有一点我们必须承认,大多数web应用程序...

    php实现的SESSION类

    SESSION 在网络应用中,称为“会话”,我们通常理解为存储特定用户会话所需的信息,这样,当用户在网站页面之间跳转时,存储的 SESSION 值不会丢失,而是在整个用户会话中一直存活下去。通俗一点讲,就是当用户A上网...

    你必须了解的Session的本质

    有一点我们必须承认,大多数web应用程序都离不开session的使用。这篇文章将会结合php以及http协议来分析如何建立一个安全的会话管理机制。我们先简单的了解一些http的知识,从而理解该协议的无状态特性。  有一点...

    经典JAVA.EE企业应用实战.基于WEBLOGIC_JBOSS的JSF_EJB3_JPA整合开发.pdf

    10.3 理解实体 382 10.3.1 持久化上下文和持久化单元 382 10.3.2 实体类的要求 382 10.3.3 实体的状态 383 10.3.4 管理实体的方法 384 10.4 实体的基本映射387 10.4.1 映射实体类的属性 387 10.4.2 将实体映射到多个...

    WEB服务器与应用服务器的区别.doc

    WEB服务器与应用服务器的区别 1.WEB服务器: 理解WEB服务器,首先你要理解什么是WEB?WEB你可以简单理解为你所看到的HTML页面就是 WEB的数据元素,处理这些数据元素的应用软件就叫WEB服务器,如IIS、apache。 WEB服务器...

    仅利用session和application实现聊天室

    2、理解并熟练应用session、application对象。 二、实验内容 1、设计聊天室,在聊天室中,需要通过JSP内置对象application来实时保存特定数量的当前聊天信息。 聊天室的设计包括:用户进行登录,选择聊天室,进行...

    PHP中cookie和session的区别实例分析

    深入理解并掌握cookie和session的应用是进行PHP程序设计的基础。本文就以实例形式来分析一下二者之间的区别。具体分析如下: 1.Cookie cookie 是一种在远程浏览器端储存数据并以此来跟踪和识别用户的机制。 PHP在...

    UML建模,python web框架Django,具基本增删改查和session,内置商品爬虫类提供个性化运动鞋类产品推荐服务

    在进行毕业设计、课程设计或大作业时,选择具备学习借鉴价值的项目可以帮助你理解和应用所学知识,同时也可以通过修改和扩展来实现其他功能。 通过参与实际项目,你可以应用所学的理论知识,深入了解软件开发或其他...

    SqlServer中如何解决session阻塞问题

    对于数据库运维人员来说创建session或者查询时产生问题是常规情况,下面介绍一种很有效且不借助第三方工具的方式来解决类似问题。 最近开始接触运维工作,所以自己总结一些方案便于不懂数据库的同事解决一些不太紧要...

    net学习笔记及其他代码应用

    30.简要谈一下您对微软.NET 构架下remoting和webservice两项技术的理解以及实际中的应用。 答:WS主要是可利用HTTP,穿透防火墙。而Remoting可以利用TCP/IP,二进制传送提高效率。 31.公司要求开发一个继承System....

    windowsnt 技术内幕

    理解NTFS分区和文件大小限制 NTFS POSIX.1符合性 为NTFS分区整理碎片 可移动介质和Windows NT 理解运行第三方磁盘工具造成的问题 支持基于Win32的应用程序 理解Windows NT对附加技术的支持 知道在什么时候不能使用...

    sap R/3 业务蓝图——理解业务过程参考模型2

    14.3.2 Session Manager 178 14.3.3 企业的组织 180 14.4 采用R/3中的参考模型 182 14.4.1 业务对象模型 183 14.4.2 面向对象的数据模型 183 14.4.3 业务过程模型 184 14.4.4 工作流模型 187 14.5 实施R/3的...

    web服务器和应用服务器.docx

    web服务器和应用服务器全文共6页,当前为第1页。web服务器和应用服务器全文共6页,当前为第1页。WEB服务器和使用服务器的区别: web服务器和应用服务器全文共6页,当前为第1页。 web服务器和应用服务器全文共6页,...

Global site tag (gtag.js) - Google Analytics