Java Web编程---状态管理

 

   我们大家都知道HTTP协议是一种无状态的协议,即:连接-关闭,它不会有任何状态存在,它不能识别多个请求中哪些是同一个用户发送的,为了解决这一问题我们接下来将要主要介绍三种方法。

 

   管理WEB应用程序的状态有以下四种方法:

 

        1.隐藏域方式

 

           这种方式基本不推荐使用。

 

        2.Cookie方式

 

           在客户端发送请求后,服务器端会发送一个cookie(键值对方式的用户信息)的响应头,客户端接到响应将Cookie存在内存或硬盘上,当客户端再次发送相同应用请求时,会一起将cookie发送到服务器端,服务器端会比较cookie和之前的cookie是否相同,如果相同则判断为相同请求。

 

        3.session方式

         

           由于cookie方式是把cookie存放在客户端,就会出现隐私问题和安全问题,为了解决这一问题,服务器在第一次响应客户端时会将客户cookie存放在服务器的内存中,然后产生一个与该cookie相对应的唯一标示SessionID,并将SessionID发送给客户端,这样一来在客户端保存的就是一个SessionID了,这样就不会出现以上两个问题。

 

        4.URL重写方式

 

           Cookie方式和session方式实质都是在传送cookie,但是如果一旦用户禁用了cookie,前面两个方法就无法进行,为了解决这一问题,我们将cookieID附加到访问URL地址后面发送出去,服务器端通过解析来识别cookieID,这样即使用户禁用了cookie我们也可以实现状态的管理。

你可能感兴趣的:(java,编程,Web,应用服务器)