关于电商网站购物车功能如何与登录账号相关联的一点想法

最近在试着做电商网站,自然也需要涉及到实现购物车的功能。然后就想到去用cookie来完成购物车的功能。

实现过程是新建一个cookie,把购物车实体类的list放进去,每次给购物车新增商品和删除商品的时候就new一个新的cookie,把key设置成一样的就可以覆盖掉之前的cookie内容了,这样就可以实现每次实现更改购物车内容之后,更新cookie的功能了。

但是完成之后遇到了一个问题,就是如何把这个存在本地客户端的cookie购物车和登录的账号关联起来呢?总不能每个登录用户都共享同一个购物车吧?

后来在网上查了一下,有人说要建表存在数据库里面,可我觉得这样也不太好,因为如果是像淘宝京东这样的访问量大的电商网站,每次对购物车的操作都要经过持久层的话,那也不太现实。

所以后来还是自己想了一个办法解决了问题,就是把cookie的key设置成账号登录时存的session用户名,那么我每次操作的cookie就是我当前登录账号的cookie了,每次new一个key值一样的cookie的时候也不会覆盖掉其他的数据(事实上,会覆盖掉其他数据的这种情况是共用一个cookie key值的时候才会产生的),这样就解决了购物车和登录账号关联的问题了。