前言:想要寫出一篇引人入勝的文章?我們特意為您整理了熱銷推薦下的商品展示系統(tǒng)設(shè)計(jì)實(shí)現(xiàn)范文,希望能給你帶來(lái)靈感和參考,敬請(qǐng)閱讀。
摘要:商品展示設(shè)計(jì)是針對(duì)性設(shè)計(jì),布局和施行商品銷售、展示、視覺傳播和購(gòu)物環(huán)境,以促成銷售,促銷商品并滿足生產(chǎn)者和消費(fèi)者的需要。消費(fèi)者的需要?jiǎng)?chuàng)造了愈加的科學(xué)、更加合理、更合乎人們購(gòu)物習(xí)慣于生活方式的商品展出系統(tǒng)。適應(yīng)如今的商品展示社會(huì)化市場(chǎng)的要求,它結(jié)合了有關(guān)網(wǎng)絡(luò)和商品消費(fèi)的理論知識(shí),包含多個(gè)學(xué)科的研究性質(zhì),擁有非常好的研究意義和實(shí)現(xiàn)價(jià)值。
關(guān)鍵詞:商品展示;促進(jìn)銷售;推薦服務(wù)
1概述
21世紀(jì)中國(guó)的互聯(lián)網(wǎng)已經(jīng)進(jìn)入高速的發(fā)展和應(yīng)用,越來(lái)越多的人在與自己休戚相關(guān)的日常生活中使用新的Internet技術(shù)。在商品營(yíng)銷領(lǐng)域,由于互聯(lián)網(wǎng)可以整合文字、音頻、視頻、動(dòng)畫等多種媒體信息,使信息的展示更加生動(dòng),信息的閱覽更加方便。還可以實(shí)現(xiàn)網(wǎng)上平臺(tái)交易、客戶信息響應(yīng)等功能,大大方便了企業(yè)、企業(yè)和客戶之間的溝通。由于這些原因,各大商品銷售商紛紛開始建設(shè)自己的商品展出網(wǎng)絡(luò)系統(tǒng),以提高自己的產(chǎn)品曝光度?,F(xiàn)在“商品展示設(shè)計(jì)”已經(jīng)成為一種商業(yè)策略。通過商品的展示和設(shè)計(jì),提升了企業(yè)形象和產(chǎn)品的附加值和最活躍的商業(yè)活動(dòng)。在這種新的競(jìng)爭(zhēng)形式下,只有準(zhǔn)確捕捉市場(chǎng)信息并關(guān)注主流時(shí)尚,才能博得消費(fèi)者的信任,才能生存和成長(zhǎng)。
2系統(tǒng)功能
商品展示系統(tǒng),作為一個(gè)展示平臺(tái),最重要的就是根據(jù)使用者的注冊(cè)信息,提供合理的,精準(zhǔn)的商品推薦和友好的展示。系統(tǒng)角色可分為3種:普通使用者、商家使用者、系統(tǒng)管理員。針對(duì)不同的角色有不同的權(quán)限和功能。具體的詳細(xì)描述如下:(1)普通使用者:1)使用者的注冊(cè)與登入登出:為使用者提供注冊(cè)與登錄功能。使用者注冊(cè)時(shí)需要填寫個(gè)人所在行業(yè)、關(guān)注領(lǐng)域以及感興趣的事物。系統(tǒng)會(huì)根據(jù)這類信息為每個(gè)使用者提供分布式商品推銷功能。2)商品展示:為使用者提供商品展示功能。商品展示主要有兩種。①根據(jù)使用者個(gè)人設(shè)置的標(biāo)簽進(jìn)行展示。②搜索展示。3)商品搜索:為使用者提供商品搜索功能。該功能要求滿足商品的多種字段搜索。如:商品名稱、商品分類、商品品牌等等。4)客服系統(tǒng):由于商品展示不涉及支付,只是提供推薦與展示平臺(tái)。所以對(duì)于的商品需要提供客服服務(wù),以便滿足使用者與商家溝通。5)使用者信息編輯:對(duì)個(gè)人信息的修改。(2)商家管理人員,除普通的使用者用戶的功能外,有對(duì)商品的常用操作功能:產(chǎn)品的相關(guān)操作:包含對(duì)自家產(chǎn)品信息的、編輯、邏輯刪除、搜索或查找等。(3)系統(tǒng)管理員:所有商品的管理:擁有對(duì)所有商家的商品信息的管理。已注冊(cè)用戶使用者的管理:對(duì)普通用戶使用者,商家用戶使用者的個(gè)人信息的管理。系統(tǒng)設(shè)置管理:針對(duì)系統(tǒng)的布局、主色調(diào)、首頁(yè)輪播推薦等系統(tǒng)性功能的管理。
3數(shù)據(jù)庫(kù)設(shè)計(jì)
系統(tǒng)的數(shù)據(jù)保存在MySQL5.7中,共有5張表:(1)產(chǎn)品信息表,存儲(chǔ)商品的基本信息。如ID,商品名稱。(2)注冊(cè)用戶表,存儲(chǔ)注冊(cè)者的姓名、賬號(hào)、密碼、權(quán)限、簡(jiǎn)介等信息。如用戶的關(guān)鍵詞,標(biāo)簽。(3)商品分類表,存放商品分類id與名稱等。(4)離線推薦表,存放每個(gè)用戶根據(jù)其自身歷史瀏覽的記錄生成的一段時(shí)間的離線推薦列表。(5)實(shí)時(shí)推薦列表存放redis中,動(dòng)態(tài)更新。離線推薦列表存放在MySQL數(shù)據(jù)庫(kù)中進(jìn)行周期性更新。
4系統(tǒng)實(shí)現(xiàn)
從第三部分系統(tǒng)的功能分析中可以得到系統(tǒng)共分為6個(gè)模塊:產(chǎn)品管理模塊、分類管理模塊、產(chǎn)品和推薦顯示模塊、用戶信息管理模塊、系統(tǒng)管理模塊和關(guān)鍵字管理模塊。首先描述系統(tǒng)總體的公有部分,然后根據(jù)篇幅適當(dāng)描述模塊的關(guān)鍵功能的關(guān)鍵業(yè)務(wù)邏輯。
4.1系統(tǒng)common部分實(shí)現(xiàn)
系統(tǒng)的整體結(jié)構(gòu)有5個(gè)包:cn.myshop.message、cn.myshop.product、cn.myshop.tags、cn.myshop.interactions、cn.myshop.os,各個(gè)軟件包下都含有entity,dao,service,controller這4個(gè)模塊,這也是大多數(shù)MVC架構(gòu)進(jìn)行的分層思想。Entity包存放對(duì)象類,對(duì)應(yīng)數(shù)據(jù)庫(kù)中的表;Dao包存放XXXDao接口,負(fù)責(zé)與數(shù)據(jù)庫(kù)交互;Ser-vice包存放XXXXService規(guī)范接口和它對(duì)應(yīng)的XXXSer-viceImpl具體的implements類,負(fù)責(zé)主要的功能與具體業(yè)務(wù)邏輯;Controller控制器的包存放XXXXController類,負(fù)責(zé)前端與后臺(tái)的交互,作為控制器除了這4個(gè)類別之外,某些package中也許還可能具有另外幾個(gè)class,例如,用于充當(dāng)工具類的toolspackage,用于充當(dāng)配置類的configurationpackage。還有負(fù)責(zé)面向切面編程(使用springAOP)的aspectpackage。統(tǒng)一異常處理得Exceptionpackage。系統(tǒng)使用模板引擎(thymeleaf)作為視圖呈現(xiàn)的一部分,并使用tf作為模型語(yǔ)言來(lái)獲取返回的模型數(shù)據(jù)。使用數(shù)據(jù)持久層框架mybatis和關(guān)系型數(shù)據(jù)庫(kù)MySQL作為數(shù)據(jù)庫(kù)存儲(chǔ),系統(tǒng)的常規(guī)業(yè)務(wù)操作使用Mybatisplus提供的常用CRUD接口。將Dao接口中的標(biāo)準(zhǔn)類的映射方法與Mybatis的mapper.xml相對(duì)應(yīng),并執(zhí)行包掃描mapperScanner(程序包掃描)和映射設(shè)置,以實(shí)現(xiàn)Dao和mapper之間的正確關(guān)聯(lián)。系統(tǒng)中使用mybatis-plus簡(jiǎn)化mybatis的開發(fā)。使用renren-generator對(duì)普通的基礎(chǔ)業(yè)務(wù)進(jìn)行實(shí)現(xiàn)。
4.2推薦頁(yè)實(shí)現(xiàn)
推薦頁(yè)分為實(shí)時(shí)推薦、離線推薦。實(shí)時(shí)推薦,實(shí)時(shí)推薦監(jiān)聽Kafka的用戶行為數(shù)據(jù)(用戶標(biāo)簽,用戶近期瀏覽(一天之內(nèi))等行為),然后進(jìn)行實(shí)時(shí)計(jì)算,將結(jié)果寫回redis,離線推薦則是根據(jù)使用者的近期使用足跡進(jìn)行計(jì)算。并且在一個(gè)定性的時(shí)間段,執(zhí)行提前設(shè)置好的預(yù)設(shè)代碼進(jìn)行離線計(jì)算。之后將計(jì)算出來(lái)的推薦結(jié)果存儲(chǔ)到MySQL數(shù)據(jù)庫(kù)中。推薦頁(yè)界面如圖2所示。詳情展示頁(yè)會(huì)對(duì)商品的圖片、評(píng)分等信息進(jìn)行描述。詳情頁(yè)展示如圖3所示。
4.3離線推薦
離線推薦主要是采用ALS作為協(xié)同過濾算法,根據(jù)MySQL中的用戶評(píng)分表計(jì)算離線的用戶商品推薦列表以及商品相似度矩陣。(1)協(xié)調(diào)過濾:利用集體智慧,把大家都喜歡的東西互相推薦。所以要求提前收集用戶偏好,有大量的數(shù)據(jù)可供分析。(2)ALS算法:ALS算法屬于一種協(xié)同過濾算法。(3)實(shí)現(xiàn)流程:ALS這個(gè)東西的使用在mllib里面已經(jīng)有實(shí)現(xiàn)了,它需要先訓(xùn)練一個(gè)模型出來(lái),再通過模型預(yù)測(cè)數(shù)據(jù)。訓(xùn)練數(shù)據(jù)需要使用ALS.train()方法,傳入訓(xùn)練數(shù)據(jù)以及控制參數(shù)。預(yù)測(cè)數(shù)據(jù)需要使用model.predict()方法,傳入測(cè)試數(shù)據(jù)即可。加載用戶評(píng)分?jǐn)?shù)據(jù)把userId和productId提取出來(lái)形成兩個(gè)獨(dú)立的RDD,計(jì)算它們的笛卡爾積得到userProducts,作為提供訓(xùn)練的模型數(shù)據(jù)儲(chǔ)備庫(kù)。把userId和productId以及score提取出來(lái)形成一個(gè)三元組構(gòu)造訓(xùn)練的模型數(shù)據(jù)儲(chǔ)備庫(kù)以及測(cè)試的模型數(shù)據(jù)儲(chǔ)備庫(kù)。訓(xùn)練的模型數(shù)據(jù)得到model,再通過model預(yù)測(cè)得到推薦數(shù)據(jù),然后把推薦數(shù)據(jù)寫入到MySQL。通過model得到的不只有預(yù)測(cè)數(shù)據(jù),還可以拿到productFeatures,即各個(gè)商品以及它的特征。
4.4實(shí)時(shí)推薦
離線服務(wù)是綜合歷史數(shù)據(jù)來(lái)計(jì)算的,但實(shí)時(shí)服務(wù)應(yīng)該根據(jù)用戶最近的行為來(lái)推薦,實(shí)時(shí)推薦要求響應(yīng)迅速,所以不能再使用ALS了。為了快速響應(yīng),應(yīng)該提前預(yù)熱數(shù)據(jù),在已有的數(shù)據(jù)集上再次少量計(jì)算即可。為了能夠?qū)崿F(xiàn)實(shí)時(shí)推薦的動(dòng)態(tài)響應(yīng)的動(dòng)態(tài)性,勢(shì)必會(huì)對(duì)其準(zhǔn)確度與推薦算法的流程進(jìn)行適當(dāng)?shù)暮?jiǎn)化,在保證推薦結(jié)果正確的情況下,減少一定的推薦元素的計(jì)算。這樣可以充分地將實(shí)時(shí)推薦的速度進(jìn)行一個(gè)適當(dāng)?shù)奶嵘?。?shí)現(xiàn)流程:(1)加載redis里面的ProductResult作為實(shí)時(shí)計(jì)算的基礎(chǔ)數(shù)據(jù)。(2)用戶user1對(duì)商品p1進(jìn)行了評(píng)分,就觸發(fā)一次實(shí)時(shí)計(jì)算。(3)從ProductResult中選出與商品p1最相似的K個(gè)商品作為集合S。(4)要過濾掉用戶user1自己評(píng)分過的其他全部商品,過濾掉之后推薦的東西才是他沒有見過的。(5)從Redis中獲取用戶user1最近時(shí)間內(nèi)的K條評(píng)分,包含本次評(píng)分,作為集合RK。(6)把從(1)、(2)、(3)里面拿到的數(shù)據(jù)作為參數(shù),開始計(jì)算推薦的產(chǎn)品優(yōu)先級(jí),并生成更新過后的標(biāo)識(shí)符集。(7)將更新過后的標(biāo)識(shí)符集與用戶user1的最后推薦結(jié)果Result組合,以加工的最新的推薦結(jié)果NewResult作為最后的推薦結(jié)果輸出。
5測(cè)試
商品展示系統(tǒng)的測(cè)試主要分為服務(wù)端測(cè)試、和客戶端業(yè)務(wù)功能測(cè)試、推薦功能測(cè)試。(1)服務(wù)端測(cè)試:針對(duì)的是服務(wù)器的壓力、性能、吞吐量、并發(fā)量,以及容錯(cuò)機(jī)制的測(cè)試。測(cè)試方法:為了提高測(cè)試的準(zhǔn)確性,采用多種測(cè)試方法,其中有典型的黑白盒測(cè)試。(2)客戶端業(yè)務(wù)功能測(cè)試:針對(duì)的是用戶正常使用系統(tǒng)的各個(gè)功能,確保指定的某個(gè)功能按照預(yù)設(shè)的結(jié)果去執(zhí)行。如:登錄注冊(cè)測(cè)試、展示功能測(cè)試、編輯功能測(cè)試、權(quán)限功能測(cè)試、安全可靠性測(cè)試。通過實(shí)際的生產(chǎn)環(huán)境模擬真實(shí)的系統(tǒng)運(yùn)行環(huán)境,確保測(cè)試結(jié)果的準(zhǔn)確,使系統(tǒng)更加的完善、健全。(3)推薦功能測(cè)試屬于客戶端測(cè)試之一,但由于其較為復(fù)雜也需要單獨(dú)進(jìn)行單元測(cè)試,確保推薦的商品時(shí)的精準(zhǔn)性。
6結(jié)語(yǔ)
對(duì)商品展示系統(tǒng)的研究,對(duì)其兩大問題進(jìn)行了主要表述與研究:一個(gè)是業(yè)務(wù),一個(gè)是推薦。雖然商品展示系統(tǒng)已經(jīng)初步實(shí)施,但是由于研究和實(shí)施時(shí)間以及一些內(nèi)部和外部條件,仍有一些領(lǐng)域需要補(bǔ)充、優(yōu)化和擴(kuò)展。比如可以整合下單服務(wù),形成一個(gè)完整的消費(fèi)流程。同時(shí)系統(tǒng)對(duì)于商品審計(jì)功能可以進(jìn)行進(jìn)一步的優(yōu)化,提取出一個(gè)單獨(dú)的審計(jì)模塊,實(shí)現(xiàn)部分商品的自動(dòng)化審計(jì)。
參考文獻(xiàn)
[1]陳瑞.基于Springboot高并發(fā)JavaWeb開發(fā)模式[J].電腦編程技巧與維護(hù),2019,(04):27-30.
[2]陳忠菊.NoSQL數(shù)據(jù)庫(kù)的研究和應(yīng)用[J].電腦編程技巧與維護(hù),2020,(09):81-83.
[3]周千元.基于Spark的個(gè)性化推薦系統(tǒng)的研究[D].中南林業(yè)科技大學(xué),2019.
[4]AhmedAbdulhadiAwadhHanshi.推薦系統(tǒng)精度提高的實(shí)用方法[D].中南大學(xué),2014.
[5]林琛,黃潔,劉杜鋼.一種基于數(shù)據(jù)非隨機(jī)缺失機(jī)制的推薦系統(tǒng)方法[P].
作者:胡繼米 張倚霖 牛玲 單位:周口師范學(xué)院