一、規格參數業務實現
1業務需求分析
昨天實現了規格參數組相關的業務,點擊商品分類,可以查看到其對應的規格參數組信息。
比如上圖中“手機”這個商品分類的規格參數組有:主體、基本信息和操作系統。
現在我們要實現的需求是:
點擊相應的規格組,會跳轉到其規格參數的頁面,也就是該規格組下有哪些規格參數?
具體數據需要我們從數據庫中查詢,因為我這邊業務還未完成,所以顯示的數據為:“該分組下沒有參數”。
2請求相關分析
無外乎還是要弄清楚四大內容:
- 請求路徑:真實路徑就是spec/params。
- 請求方式:GET請求。
- 請求參數:gid,也就是規格參數組id。
- 返回值:是一個規格參數數組。
好,弄清楚了這四點,就可以寫后臺代碼了。
3實體類和數據表
關于實體類有一個知識點要說明下。
numeric這個字段在mysql數據庫中是一個關鍵字,會有沖突。
面對這個問題有兩種解決方式:
①使用注解@Colum
說明關鍵字字段是哪個一個即可,但是該方式若是有多個關鍵字需要一一說明。
②配置文件中配置
也可以在yam文件中如圖中配置。
注意:該配置只在mysql數據庫中有用。
3Java三層架構
①Controller層代碼編寫
根據請求相關的四大內容即可完成Controller層的代碼編寫。
注意請求參數gid是以問號的形式拼接到請求路徑中的,所以使用注解@RequestParam。
②Service層代碼編寫
使用通用mapper完成查詢操作:因為不是主鍵查詢,所以創建對應的實體類對象,將gid賦值給該對象,最后根據該對象完成查詢。
③Mapper層代碼編寫
繼承通用mapper提供的Mapper接口即可,在泛型中說明對應的實體類SpecParam。
4測試
我們再次在管理系統中點擊對應的規格參數組,就能查詢到對應的規格參數了。
上圖中就是“主體”這個規格參數組,從數據庫中查詢到了3個規格參數,此外還有:
- 新增業務對應新增參數按鈕。
- 修改業務對應修改按鈕。
- 刪除業務對應刪除按鈕。
關于這三個業務就暫且不一一說明了,其實無外乎就還是這么一個思路。
二、SPU和SKU數據結構
SPU和SKU是電商中兩個非常重要的概念。
1什么是SPU和SKU呢?
- SPU全稱為Standard Product Unit,翻譯過來就是標準產品單位。
- SKU全稱為Stock Keeping Unit,翻譯過來就是庫存量單位。
這種官方定義看起來好像挺難理解的,我以某電商網站某品牌手機為例作個說明:
思考問題:上圖是一個商品么?
它不是一個具體的商品,它是一個SPU,我通過選擇不同的屬性可以組合成多個商品。
SPU是商品的共有集,并不是固定某個商品。
比如上圖中手機有三種顏色可以選擇,手機內存也有4種可以選擇。
而
SKU才是具體的某個商品。
比如陶瓷黑、8G+128GB內存…等每一項都確定好之后的商品才是一個SKU。
通俗理解就是我們購買訂單頁面對商品的詳細說明,就是一個SKU。
每一個SKU的價格一般是不一樣,我們購買的是SKU而不是SPU。
2SPU數據表設計分析
在數據庫中其被拆分成了兩張表,我們具體做一個分析:
商品①:陶瓷黑、8G+128GB內存…等屬性都確定后的一個SKU。
商品②:亮銀版、8GB+256GB內存…等屬性都確定后的一個SKU。
無論是商品①還是商品②其SPU都是一樣的。
其包含有:id、商品名稱、品牌id,副標題、商品描述(描述一般都會描述配置最高的那個)、包裝、售后服務。
因為關于商品描述這個字段非常的長,所以將SPU表做了一個拆分,將這些描述性字段單獨又放在了一個數據表中。
聲明:本文由網站用戶竹子發表,超夢電商平臺僅提供信息存儲服務,版權歸原作者所有。若發現本站文章存在版權問題,如發現文章、圖片等侵權行為,請聯系我們刪除。