淘淘商城專案 商品規格引數的表結構設計

2022-04-07 03:55:02 字數 2088 閱讀 9565

規格引數就是對商品引數的描述。以擷取的京東商品描述為例,作為這篇文章分析的物件。

(sony電視)

商品的規格引數的字段是動態變化的

,我們應該怎麼在程式中表示這個結構,以及在資料庫如何儲存。

方案一:

首先我們應該清楚不能用固定的資料結構去表示規格引數,例如普通的類(類裡的每個屬性都代表乙個引數名)。

因為商品很多,每個商品的引數都不統一,不可能對每乙個商品都去造乙個類,開銷太大也不現實。

方案二:

使用模板的思想實現

即針對每一種商品的規格引數設計乙個模板,然後商品去套用對應型別的模板,然後按照模板中的引數字段填寫相應的內容,例項化這個規格引數模板,最後生成商品規格引數意思就是把規格引數分為了兩塊來做,第一塊要設計每類商品的規格引數模板,這樣就解決了每類商品規格引數不同的問題。第二塊就是要例項化引數模板,生成最終商品的規格引數

知道了思想,那該怎麼具體去實現,以下又引出了兩個需要解決的問題

1、  模板如何儲存?

a)儲存到資料庫

b)字段不能固定

i.             map

ii.             json

2、  儲存的json結構

a)模板結構

b)最終資料結構

需要有2張表:

1、  模板表,需要和商品類目關聯

2、  規格引數資料表,需要和商品關聯

模板表)

(↓規格引數資料表)

在資料庫中規格引數模板和具體的規格引數資料都是以json格式的字串儲存,而不是分欄位儲存。使得本來需要設計很多張表來儲存簡化為2張表。

1.新增模板:前台只要按指定json格式構建規格引數模板,然後生成json文字傳給後台,然後儲存伺服器。

介面:

2.填寫具體的規格引數

前台如果要給某件商品新增規格引數,只要解析對應模板的json格式資料,然後生成表單,新增每個欄位的資料,再按之前所示的具體資料結構json格式生成json提交後台,

然後儲存資料庫

介面:

json:

商品規格管理的實現 淘淘商城(十二)

建立模板 根據規格模板生成表單 儲存商品規格引數 展示規格引數 儲存規格模板 響應引數 taotaoresult。service層 service public class itemparamserviceimpl implements itemparamservice return taotaor...

淘淘商城實現商品規格模板列表展示的實現

在做淘淘 專案的時候,想實現展示商品規格模板列表的展示功能,因為是單錶查詢 資料庫中有專門的tb item param這個表 所以dao層可以使用逆向工程的 service層 1 寫介面中的方法。得到商品規格模板列表 eudategridresult getitemparamlist int pag...

淘淘商城規格引數列表顯示

淘淘 規格引數列表顯示 select ip.id,ip.item cat id,ic.name as item cat name,ip.param data,ip.created,ip.updated from tb item param as ip left join tb item cat as...