jsp实现购物车,请问用操作数据库实现好,还是session做好?

来源:百度知道 编辑:UC知道 时间:2024/06/22 20:12:06
如题~~~
我想知道jsp实现购物车
上面两种方法~~哪种更节约资源~~哪种更效率~!
请详细说明下~!

用数据库存你得给数据库造成多大的负担啊, 而且对于购物车, 这种需要实时操作的东西, 数据库的访问量一大了, 就容易出现并发错误, 或者直接崩溃.

不可否认用Session确实效率很高, 而且会话是针对各个连接的, 所以便于管理, 但是用Session也不是完美的, 因为Session是有有效期的, 根据服务器的设置不同而不一样长, 如果你在购物的过程中Session超时了, 那么购物车中的东西就会全没了.

不知道你看过当当网的购物车没有, 当你下线之后, 再次上线, 购物车中的东西还是存在的, 这对于用户来说非常方便.

所以如果你的服务器够强的话, 你完全可以用一个静态变量来保存所有用户的购物车, 比如用一个静态的Map, 以IP作为Key,区分不同用户的购物车, 这样就可以使用户在下线的情况下也可以保存购物车中的内容.

这种方法实现过, 只是没有用大量的并发访问测试其稳定性, 但是一定是可行的.

用session,省去了数据库读写的过程… 但会加重服务器的负担!但一般都是用session的。只有在最后结帐时才会将交易记录存入数据库

用户用数据库存取,那么用户选择商品的时候就很有可能频繁更新数据库,增加数据库的负担。

如果存在Session中,这些系统会保存在服务器的缓存中,增加服务器压力。

你自己考虑下自己应该采用哪种方式,综合考虑。