top of page

JAVA-潘O廷-寵物用品購物網站

此作品使用於:面試


專案動機

當初想要學習購物車和金流如何製作實現所以選擇購物網站類型。

由於家裡有養寵物,平時最常逛的就是寵物用品網站,所以當決定要做購物網站時就決定以寵物用品當作主題了


專案介紹
  • 專案技術1. Spring MVC/Vue/Ajax

整體專案採用MVC設計模式

並使用SpringMVC搭建

利用Vue搭起前後端橋樑

使用Ajax向後端控制器發起請求


  • 專案技術2. SpringCloud微服務

分割成微服務各模塊各司其職提高性能、容易維護、便於理解


  1. Eureka註冊中心

  2. Gateway 網關

  3. Product 產品模塊

  4. Order 訂單模塊

  5. Paypal 金流模塊

  6. Search 搜索模塊

  7. Sys 系統模塊





  • 專案技術3. 登入&註冊

1.Vue功能攔截表單提交

2.Ajax異步通訊向對應控制器發請求

3.驗證框架(資料空白、格式錯誤…)



  • 專案技術4. 顯示不同商品&PageHelper分頁


1.同一個網頁模板,根據參數不同顯示不同商品

2.使用PageHelper將多餘商品分頁,一頁僅顯示16項商品



  • 專案技術5. JavaScript 購物清單

1.點”加入購物車”自動彈出購物清單

2.鼠標在購物清單內可進行操作,離開購

物清單,隱藏購物清單

3.計算商品總價


  • 專案技術6. Paypal金流

1.點”Paypal付款”跳轉PayPal

2.付款成功後付款狀態改變

3.流程:

傳訂單數據給PayPal建立訂單

->PayPal捕獲訂單

->擷取approve轉發至PayPal付款


  • 專案技術7. ElasticSearch搜索

由於模糊查詢對於MySQL性能不佳,使用ES優化所有模糊查詢的部分

包括:搜索,特殊產品顯示(狗飼料…)


  • 專案技術8. Ribbon遠端調用

由於分成多個模塊,需要使用到別的模塊數據時使用ribbon調用


  • 專案技術9. Redis Session共享

Gateway網關是使用SpringSecurity實現,用戶信息會存在Session中

因此利用Redis服務器共享Session



  • 專案技術10. SpringBoot聲明式事務

在業務代碼中含有多項mysql增刪改…等操作加上註解@Transaction

避免運行出錯時sql語句只執行一半


專案心得&教學回饋

經過專案的製作,對於SpringMVC中的V和C交互過程、MySQL的操作、Vue、JavaScript也都更加熟悉,也因為是製作購物網站,了解到金流功能大致上是如何實現。


對於這次購物網站的搭建我覺得相當有趣,以前從來沒想過平時自己在逛的這些網站,有一天我可以自己做出來,當然對於初學的我來說過程遇到很多問題,常常一個小問題會卡住一個下午,還好Charlie老師總是會給我一些提示或是網站讓我去參考學習,當那些卡住的問題被解決時感覺真的很好。

383 次查看

相關文章

查看全部
bottom of page