在這章,主要完成的工作內容是對概要設計中的順序圖進行總結整理,定義實現各個功能模塊所需要的接口,以及設計各個層次中類與類之間的依賴關系。
- 接口定義
注冊
功能描述:實現會員信息的保存。
Service層
register(User user):實現注冊操作。
Dao層
getUserByUserName(String userName):根據用戶名獲取用戶記錄。
save(User user):保存用戶記錄。
登錄
功能描述:使用會員的登錄流程。
Service層
login(String userName,String passWord):實現登錄操作
Dao層
getUserByUserName(String userName): 根據用戶名獲取用戶記錄。
添加購物車
功能描述:將商品添加到會員的購物車中。
Service層
addGoodsToCart(Map<String, Object> request,Integer goodsId,String userName):增加購物車記錄。
Dao層
getCartByGoodsIdAndUserNama(Integer goodsId,String userName): 根據商品編碼和用戶名獲取對應的購物車記錄
saveCartRecord(Cart cart):保存購物車記錄。
saveOrUpdateRecord(Cart cart):保存或更新購物車記錄。
查看購物車
功能描述:會員查看已添加到購物車中的商品信息。
Service層
checkCartRecord(Map<String, Object> session, String userName): 根據用戶名查詢購物車記錄。
Dao層
getCartByUserName(String userName): 根據用戶名獲取對應的購物車記錄列表。
購買
功能描述:實現會員購買商品的業務流程。
Service層
generateOrder(Integer goodsId, Map<String, Object> session, Orders orders):生成訂單記錄。
generateOrder(Map<String, Object> session, Orders order):“立即購買”的操作。
checkOut(Integer orderId):支付訂單操作。
Dao層
getGoodsByGoodsId(Integer goodsId):根據商品編碼獲取指定商品記錄。
getUserByUserName(String userName):根據用戶名獲取用戶記錄。
saveOrUpdateOrder(Orders order):保存或更新訂單記錄。
saveOrUpdateOrderGoods(Order_Goods orderGoods):保存或更新訂單商品表。
deleteCart(String userName):刪除購物車記錄。
查看訂單
功能描述:會員查看已生成的訂單記錄信息。
Service層
checkOrder(Map<String, Object> session, Map<String, Object> request):用戶查看所有訂單記錄。
checkOrderDetail(Integer orderId, Map<String, Object> request):用戶根據訂單編碼查看訂單記錄詳情。
Dao層
getOrdersByUserName(String userName):根據用戶名獲取訂單記錄列表。
getOrderGoodsByOrderId(Integer orderId):根據訂單編號獲取訂單記錄信息。
檢索商品
功能描述:用戶根據商品類別查看特定的商品記錄。
Service層
searchGoods(String goodsType):根據商品類別查找商品記錄。
Dao層
getGoodsByCategory(String goodsType):根據商品類別獲取商品記錄列表。
商品信息管理
功能描述:管理員對商品進行增加,刪除和修改操作。
Service層
getAllGoodsInfo(Map<String, Object> requset):獲取所有的商品記錄信息。
addGoodsRecord(GoodsVo goods):增加商品記錄。
deleteGoodsRecord(Integer goodsId):刪除商品記錄。
searchGoods(Integer goodsId):根據商品編碼搜索商品記錄。
changeGoodsInfo(Goods goods):更新商品信息。
Dao層
getAllGoods():獲取所有商品記錄。
getGoodsByGoodsId(Integer goodsId):根據商品編碼獲取商品記錄。
saveOrUpdateGoodsInfo(Goods goods):保存或更新商品記錄。
deleteGoods(Goods goods):刪除商品記錄。
用戶管理
功能描述:管理員對用戶進行增加和刪除操作。
Service層
addUser(User user):增加用戶記錄。
deleteUser(String userName):刪除用戶記錄。
Dao層
deleteUserByUserName(String userName):根據用戶名刪除用戶記錄。
- 類與類之間的依賴關系
Model層:
根據概要設計,可以得出各個實體類之間的關系如下描述:
購物車表 用戶表 多對一
購物車表 商品表 多對一
單向關聯,通過購物車表可以得到用戶信息,商品信息
訂單表 商品表 多對多
訂單表 訂單_商品表 一對一
單向關聯,通過訂單表可以得到訂單_商品表的信息
訂單_商品表 商品表 一對一
單向關聯,通過訂單_商品表可以得到商品表信息
訂單表 會員 多對一
實體類之間的關系如下圖:

Service層:
根據需求分析及概要設計,將Service層定義為業務邏輯處理層,同時采用面向接口的編程思想,將業務邏輯功能的實現與定義分隔開,使得系統的耦合度大大降低的同時也使得系統的靈活性和可擴展性大幅度提高。
根據功能模塊接口的定義,將Service層中的業務邏輯處理分為4類:購物車業務處理CartManager,商品業務處理GoodsManager,訂單業務處理OrderManager,用戶信息業務處理UserManager。各個類之間的關聯以及實現的接口如下圖所示:


Dao層:
根據需求分析及概要設計,將Dao層定義為數據訪問層,同時采用面向接口的編程思想,將數據訪問功能的實現與定義分隔開,使得系統的耦合度大大降低的同時也使得系統的靈活性和可擴展性大幅度提高。
根據功能模塊接口的定義,將Dao層中的數據訪問處理分為4類:購物車數據訪問處理CartDao,商品數據訪問處理GoodsDao,訂單數據訪問處理OrderDao,用戶數據訪問處理UserDao。各個類之間的關聯以及實現的接口如下圖所示:

