session和cookie都是会话跟踪技术。cookie通过客户端记录信息,确定用户身份,session通过服务端记录信息确定身份。但是session的实现依赖于cookie,sessionId这个session的唯一标识需要存放在客户端
cookie和session的区别
- cookie数据存放在客户的浏览器上,session数据存放在服务器上
- cookie不是很安全,别人可以分析存放在本地的cookie并进行cookie欺骗,考虑到安全应当使用session
- session会在一定时间内保存在服务器上,当访问增多,会比较占用你服务器的性能,考虑到减轻服务器性能方面,应使用cookie
- 单个cookie保存的数据不能超过4k,很多浏览器都限制一个站点最多保存20个cookie
综上所述:将登陆信息等重要信息保存到session,其他信息如需要保留,可以放在cookie中,购物车最好使用cookie,但是cookie是可以在客户端禁用的,可以使用cookie+数据库的方式实现,当从cookie中不能取出数据时,就从数据库中获取。