小米商城專案(JSP+Servlet專案)

Ziph發表於2020-07-04

小米商城專案

專案已託管到GitHub,大家可以去GitHub檢視下載!並搜尋關注微信公眾號 碼出Offer 領取各種學習資料!

在這裡插入圖片描述
在這裡插入圖片描述

基於Servlet+JSP開發的小米商城專案,因為專案體量特別小,僅供小夥伴們參考與練習!


一、Get小米商城專案

專案宣告: 該專案為小米商城專案,是一個基於Servlet+JSP開發專案,在此託管到GitHub以作記錄,並提供給正在學習的小夥伴練習。此專案不是特別高階嚴謹的專案,只是一個簡單的練習,所以有裡面也有很多的不足之處,請諒解!謝謝!

二、小米商城專案流程展示

注意: jsp頁面、資料庫以及部分Utils工具已提供,我們只需要建立專案匯入建立和編寫其他程式碼即可。頁面展示過程被紅色線框圈住地方是我們需要做的商城入口,點選該入口完成跳轉至其他頁面,根據其他jsp頁面顯示的內容和業務編寫對應的頁面展示和業務邏輯程式碼。

註冊功能頁面(register.jsp)
image-20200704120041739
image-20200704120041739
註冊成功頁面(registerSuccess.jsp)
image-20200704120158582
image-20200704120158582
未登入的商城頁面(index.jsp、header.jsp、footer.jsp)
image-20200704120449273
image-20200704120449273
登入頁面(login.jsp)
image-20200704120728527
image-20200704120728527
登入後的商城主頁(index.jsp、header.jsp、footer.jsp)
image-20200704120929072
image-20200704120929072
商品分頁列表(goodList.jsp)
image-20200704121207255
image-20200704121207255
商品詳情頁(goodsDetail.jsp)
image-20200704121351927
image-20200704121351927
加入購物車成功(cartSuccess.jsp)
image-20200704121446513
image-20200704121446513
購物車列表(cart.jsp)
image-20200704121659842
image-20200704121659842
訂單列表(order.jsp)
image-20200704122013814
image-20200704122013814
提交訂單成功(orderSuccess.jsp)
image-20200704122033146
image-20200704122033146
微信支付(payWeixin.jsp)
image-20200704122527671
image-20200704122527671
支付成功(message.jsp)
支付成功
支付成功
主頁地址管理(header.jsp - > self_info.jsp)
image-20200704122801574
image-20200704122801574
主頁我的訂單(header.jsp - > orderList.jsp)
image-20200704122941131
image-20200704122941131
訂單詳情(orderList.jsp - > orderDetail.jsp)
image-20200704123029283
image-20200704123029283
注意:有興趣的小夥伴自行擴充套件,優化細節!

三、資料庫

資料庫表簡介

  • 地址表(tb_address): 包含id、地址資訊(detail)、姓名(name)、電話(phone)、使用者id(uid)、預設地址標記(level)
  • 購物車表(tb_cart): 包含id、商品id(pid)數量(num)、小計(money)
  • 商品表(tb_goods): 包含id、商品名稱(name)、新增購物車日期(pubdate)、圖片(picture)、單價(price)、星級(star)、描述(intro)、商品型別id(typeid)
  • 商品型別表(tb_goods_type): 包含id、商品型別名稱(name)、商品型別級別(level)
  • 訂單表(tb_order): 包含訂單id、使用者id(uid)、小計(money)、訂單狀態(status)、下單時間(time)、地址id(aid)
  • 訂單詳情表(tb_orderdetail): 包含id、訂單id(oid)、商品id(pid)、商品數量(num)、小計(money)
  • 使用者表(tb_user): 包含id、使用者名稱(username)、密碼(password)、郵箱(email)、性別(gender)、賬戶啟用標記(flag)、管理員標記(role)、啟用碼(code)

注意事項:

  • 賬戶啟用標誌flag=1為已啟用狀態;預設標記地址標記為1
  • code啟用碼可以用UUID來生成,記得生成之後要把UUID碼中的"-"去掉哦
  • 訂單ID是一個UUID生成的32為字串型別ID,也是要把"-"去掉的
  • 訂單狀態我們只用了兩個狀態,如果需要檢視狀態,可以在我們的專案中查詢utils工具中的列舉類OrderStatus
  • 下單時間在資料庫中是time型別,而該型別包括了日期和時間。java.utils.date是包含日期和時間的,而java.sql.date是隻包含日期的,而不包含時間。所有我們在此專案中只需要使用java.utils.date即可
  • 購物車表中的小計為空,是因為當你把商品加入購物車後儲存一次小計,但是當你到提交訂單時修改數量,小計應該也是會變的。所以這導致了購物車中的小計與訂單中的小計不同
  • 清空購物車和刪除購物車中的商品不是直接delete刪除,因為使用者資料的寶貴,所以我們只需要操作使用者購買商品的數量即可
資料庫模型
image-20200704133013819
image-20200704133013819

四、專案需求分析

專案需求分析
需求分析
需求分析

相關文章