文档介绍:session对象实现web应用的用户身份识别简介:这是借助session对象实现web应用的用户身份识别-的详细页面,介绍了和对象,有关的知识,加入收藏请按键盘ctrl+D,谢谢大家的观看!要查看更多有关信息,请点击此处1引言通过浏览器操作的简易性和实现的方便性,使得基于b/s结构的web应用模式日渐流行;在web应用环境中,特别是多角色用户情况下,不同的用户拥有的操作权限不同,用户的身份识别非常重要。本文对web应用用户身份识别的难点做了简单剖析,并从应用程序的角度实现了用户的身份认证。2用户身份识别的难点——http协议的无状态性http协议(即超文本传输协议,hypertexttransferprotocol)是一个应用层的网络协议,采用c/s模式,用来发送客户请求的服务器上的资源。web应用程序的用户通过浏览器进行操作,以浏览器作为客户端采用http协议同web服务器进行交互,完成相应的工作,由此可见,http协议是web应用程序的重要基础之一。每个web站点都有一个服务器进程,它在特定tcp端口(默认80)上不断监听,以便发现是否有浏览器向它发出连接建立请求;一旦监听到连接建立请求并建立了tcp连接之后,浏览器就向服务器发出浏览某个页面和 "借助session对象实现web应用的用户身份识别-" 有关的java编程小帖士:strong>。语法publicstaticfinalintDEFAULT;的请求,服务器接着就返回所请求的页面作为响应;发送完响应后,服务器关闭tcp连接。服务器处理下一个请求与上一个请求没有任何关系,对于http服务器而言各个请求都是一样的,不会保留各次处理时的信息,这就是http协议的无状态性。http的无状态性既是优点,也是缺点,协议原本的设计在于共享资源,“无状态”的设计较有效率也容易实现,很适于它的典型应用。但对基于web的应用,却很不方便,特别是对拥有各种角色、权限的多用户系统来说,可能要求对用户的权限进行区分,不同部门、不同角色能够查看的页面不同,对同一页面的操作权限也可能要做区分,这就要求对用户的身份进行验证,通过验证的用户还要保留其身份标识,以维护对相关联页面的操作权限。因为http协议本身不维护请求之间的状态信息,若仅仅通过协议本身,服务器无法判断各请求之间的关联性,也就是说,我们尽管可以使用户进入web应用的默认页面为登录页面,让用户输入用户登录名及密码等信息以实现用户身份验证,然后再通过链接或其它机制转到其它相关页面,但是如果不采取其它措施,用户即使不从登录页面进入也可以通过输入url的方式对网站上其它页面进行不受限制的访问。因而,能够识别用户的身份、识别一系列远程客户的请求是从同一个客户处发出的,是建立有效的基于web的应用程序的关键。3解决之道——善用会话(session)对象会话可以认为是某个用户和服务器之间的一系列相关的交互,这个交互会持续一段时间。对于单个用户而言,会话过程的开始以用户开始访问某个网站为标志,会话过程的结束以用户结束对该网站的访问为标志。不同的用户对应着不同的会话过程,不同的会话过程之间互不干涉,互不影响。按对象的术语讲,一个会话可以看作是一个对象,它驻留在服务器上的应用程序中并受应用程序的影响。一旦在服务