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