Java Web 客户端保存用户会话信息

本文介绍了JavaWeb中几种常见的会话管理方式,包括在客户端和服务端保存会话状态的方法及其优缺点,还讨论了实现这些策略的具体技术手段。

    前一段项目完成一直在实施工作,现在又空闲时间,进行回顾一下java web的知识。          

    在java web 中“用户会话”是在客户端和服务端之间的多次请求构成的一种的“对话”。

 

 

          在客户端保存会话状态:其实质把会话状态保存在客户端,就是把会话串行化,并且把他放在html视图页面,传递会客户端。

 

  其优点如下:

   (1)相对来说容易

   (2)保存状态比较少时效果比较好。

   (3)当需要在多台物理服务器上实现负载均衡时,使用客户端保存会话状态的策略,也不需要在服务器之间复制会话状态。

 

 

实现服务器段保存会话状态的集中常见策略:

   (1)HTML隐藏域字段

   (2) HTTP COokie 使用

    (3)将会话一查询字符串格式放入url中

  

 

针对html隐藏字段:

    优点:容易实现,在安全性行比较低且数据量比较小的情况下,效果比较好

   缺点:数据多时,对系统性能产生负面影响比较大。(在请求和响应中都要通过网络反复传输)

           数据信息只能以字符串格式保存在html隐藏域字段中。

        客户端用户,可以通过查看源代码,直接查看到暴露在html中信息。

 

 

针对HTTP COOKIE :

  优点:同html隐藏字段优点

 缺点: 数据多时,对系统性能产生负面影响比较大。(在请求和响应中都要通过网络反复传输)

           数据信息只能以字符串格式保存在COokie字段中。

        客户端用户使用的浏览器不同可能存储的数据量大小不等。

 

 

 

  针对会话状态查询字符串话放在url:

  优点:容易实现,在安全性行比较低且数据量比较小的情况下,效果比较好

  缺点: 数据信息的长度有可能有限制,如get请求方式等            

           数据信息只能以字符串格式保存在查询字符串中

 

 

 

 

 

在客户端保存会话状态时的安全问题:

      当客户端放在客户端时,必须要考虑数据的安全性,如果不想暴露数据给客户端,可以适当的加密来保护数据。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值