![](http://static.javashuo.com/static/loading.gif)
![](http://static.javashuo.com/static/loading.gif)
購物車的功能實現。mysql
查詢的資料,找到三種方法:
1.用cookie實現購物車;
2.用session實現購物車;
3.用cookie和數據庫(購物車信息持久化)實現購物車;
=========================================================================
分析一下這三種方法的優缺點:
1.單純有cookie實現購物車,這樣的購物車不是很理想,設想一下,若是客戶端的瀏覽器把cookie給禁用了,
這種方法就會在這裏流產...
2.session中保存購物車的信息,這個只是在一個會話中可用,若是用戶沒有登陸,或者說登陸了之後,添加購物車,在關閉瀏覽器
或者登出後,以前所添加的購物車統統都流產啦...
3.我這裏要說就是這種方法啦.....
主要的流程:
A.用戶登陸前的數據流:用戶在沒有登陸系統的時候,對喜歡的商品進行添加購物車,那麼這個時候,咱們能夠把購物車信息保存
到cookie中,這裏會涉及到cookie的添加,修改操做;也即若是以前在cookie中不存對應的cookie,則就對cookie進行添加操做。
若是在cookie中存在對應的cookie,那麼,這時候,就要對cookie進行修改操做了(這裏涉及到用戶對同一個商品進行屢次添加購物車的狀況)。
B.用戶登陸後的數據流:用戶在登陸後,系統首先作的第一件事就是去獲取對應的cookies,若是存在相關的購物車cookies,那麼就對該購物車
信息進行相應用戶User的持久化操做,要麼添加,要麼修改。(添加操做:該用戶所對應的購物車若是沒有相應的信息進行添加操做;修改操做:相似的,
若是存在對應用戶的購物車信息,就進行修改操做)。用戶登陸後,也能夠進行購物車的添加操做,不過,這裏不是添加到cookie中,而是直接持久化到
數據庫中。注:用戶登陸後的數據都是和數據庫打交道。本案例使用的是mysql數據庫。sql
![](http://static.javashuo.com/static/loading.gif)
![](http://static.javashuo.com/static/loading.gif)
完畢以後要設計相關的實體類,本案例省略。數據庫