设计模式在项目中的应用案例_设计模式在项目中的应用(初学者版)
本文適用于設計模式初學者。
很多人學習了設計模式,但在項目開發中仍然不知道如何使用;
很多小伙伴在課堂上跟著老師稀里糊涂的聽了,懂了,考核讓做項目,卻又懵逼了。
設計模式這種從理論到應用的落地,需要有足夠的編程經驗和應用場景,今天這篇文章就為大家分享一下,自編自導自演的設計模式在實際項目中的開發使用。
項目中有部分是為了設計模式而設計模式,運用的雖不是很完美,但如果你練手,或者應付一次期末考核大作業,應該是沒問題。
只需要你有基本的 SSM 開發經驗,該項目就完全能夠理解的通。
項目名稱
商城購物&管理系統v0.0.1
技術
B/S 體系架構
SSM + LayUI + MySQL5.X(8.X) + IDEA + TOMCAT
項目效果
下面是項目運行截圖
業務需求
顧客登錄系統后,可以購買物品;
商家有三種人員,店鋪職員、庫存經理、店鋪Boss。店鋪職員可以發起進貨申請,由庫存經理和店鋪 Boss 審批進貨申請;
用戶下單后,店鋪職員、庫存經理都能夠收到下單通知。
業務分析
- 多用戶登錄(顧客、店鋪職員、庫存經理、老板)。采用策略模式
- 在頁面向顧客展示商品圖片。圖片加載采用單例模式
- 顧客下單,通知店鋪職員、庫存經理。采用觀察者模式
- 店鋪職員申請進貨,增加庫存量,小于 500,庫存經理直接審批;大于 500,由老板直接審批。 采用責任鏈模式
- 整體項目架構 MVC 模式
詳細解析
用戶登錄 - 策略模式
每一種用戶登錄時有自己的處理方式,比如寫入用戶身份(0、1、2 分別代表不同的用戶身份),添加不同的 Session 值。
商品圖片加載 - 單例模式
FtpCommection 是一個單例類,控制 FTPClient(FTP 服務用到的一個類),間接避免產生多余的 client。
ftpConnection 對象可以調用下載方法 downloadFile()。
顧客下單通知 - 觀察者模式
用戶下單后,通知店鋪職員和庫存經理發貨。
觀察者為店鋪職員,庫存經理。被觀察者為一條訂單。
職員申請進貨審批 - 責任鏈模式
店鋪職員發起進貨申請,進貨數量小于 500 時,由庫存經理直接審批;大于 500 時,需由老板 Boss 審批。
整體項目架構 - MVC 模式
注意點
1. 關于 FTP 文件服務器,需要在自己本地進行搭建,我的搭載了服務器,雖然你暫時可以用,但可能不確定啥時候圖片我就給刪了(哈哈)。因此拿到項目后需要在自己本地搭建 FTP 文件服務器。
很簡單,隨便找一篇教程就可以。然后把服務器的地址、名字、密碼在 CommodityServiceImpl 類中修改一下。
2. 數據庫,如果使用的5.x版本的 MySQL 數據庫,pom.xml 里面就采用 5.x 版本的依賴;如果是 8.x 版本的MySQL 數據庫,pom.xml 里面就采用 8.x 版本的數據庫;8.x 版本的數據庫在 jdbc.properties 文件中,數據庫的連接需要改為
jdbc.driver=com.mysql.cj.jdbc.Driver3. 只有在前端加載商品圖片時,采用了單例模式下載 FTP 服務器中的資源。后端的商品圖片獲取,是直接在靜態資源文件夾中寫死的。
4. 項目源代碼、數據庫的源文件(數據庫表和數據),在公眾號內回復 cms 可以獲取。
項目比較簡單,細細讀一下應該沒什么問題。若有什么問題,上面的文章首發鏈接內有我微信,隨時聯系我吧。拜拜
總結
以上是生活随笔為你收集整理的设计模式在项目中的应用案例_设计模式在项目中的应用(初学者版)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: .md是什么文件_Element-UI源
- 下一篇: hashset默认长度是多少?_看看,这