智能推薦社交分享小程序(websocket即時通訊、協同過濾算法、時間衰減因子模型、熱度得分算法)

🎈系統亮點:websocket即時通訊、協同過濾算法、時間衰減因子模型、熱度得分算法;

一.系統開發工具與環境搭建

1.系統設計開發工具

后端使用Java編程語言的Spring boot框架

項目架構:B/S架構

運行環境:win10/win11、jdk17

小程序端:

技術:Uniapp;

UI庫:colorUI;

開發工具:HBuilderX;

前端:

技術:框架Vue.js;

UI庫:ElementUI;

開發工具:Visual Studio Code;

后端:

技術:Java語言、mybatis plus、Spring boot框架;

開發工具:IDEA 2023.3.3版本;

數據庫:

數據庫:mysql5.7/8.0;

數據庫工具:Navicat12版本;

二.系統實現(部分截圖)

2.1 用戶模塊的實現

2.1.1 注冊登錄功能實現

用戶通過小程序的/pages/Front/Register注冊界面進行注冊賬號,通過view標簽包裹注冊內容,包含四個input輸入框組,用戶昵稱、賬號、密碼和手機號。當用戶點擊注冊按鈕,該按鈕綁定了Register()點擊事件,驗證用戶輸入的信息是否為空,為空則提示用戶輸入對應信息,驗證通過后,使用this.$http.Post方法向后端發送POST請求,調用/User/OtherRegister接口進行用戶注冊,用戶注冊成功后,使用uni.redirectTo方法跳轉到登錄頁面。注冊界面圖如圖4-1所示。

用戶進入/pages/Front/Login登錄界面,輸入已注冊的賬號、密碼進行登錄,前端進行驗證用戶輸入的賬號和密碼是否為空,若為空,則調用this.$comm.ShowToast提示用戶輸入的信息為空。隨后將用戶輸入的表單數據傳遞到后端/User/SignIn接口進行驗證用戶輸入的賬號密碼在用戶表是否存在,存在則代表登錄成功。登錄界面圖如圖4-2所示。

2.1.2 話題推薦功能實現

話題推薦功能采用多維度智能算法組合模式,為不同用戶篩選感興趣的話題列表。當小程序端傳遞用戶身份標識至/Topic/TopicRecommend后端接口時,若系統無法識別有效用戶信息,則直接返回空白列表。后端從持久層獲取所有用戶的互動軌跡數據,通過群體行為分析模塊建立用戶與話題的關聯模型。系統通過計算興趣匹配度,識別出與當前用戶行為模式相近的群體集合。在話題內容篩選階段,查詢已經審核通過的有效話題數據,并將結果轉換為數據傳輸對象TopicDto。推薦權重由三部分組成:通過相似用戶行為推薦的關聯度占比30%,話題閱讀量(40%權重)、互動點贊(30%權重)、話題收藏(30%權重)構成的熱度指標占40%,以及隨時間推移自動衰減的時效因子占30%。當目標話題存在于相似用戶關注列表時,取最高匹配度值作為基礎參數。時間因子通過1/(1+log(間隔天數+1)的數學公式動態調整內容權重,使近期產生的話題獲得更合理的曝光機會。最終系統對所有待推薦內容進行綜合評分排序,形成個性化推薦話題列表返回小程序端進行展示。推薦話題界面圖如圖4-3所示。

2.1.3 實時聊天功能實現

系統提供了實時聊天的功能,用戶點擊“消息”Tabbar,進入/pages/Front/WechatCollection聊天列表,當頁面顯示的時候,調用this.GetWechatCollectionListApi()方法,查看聊天集合信息,該方法調用后端/WechatCollection/List接口,并傳遞當前用戶ID,獲取該用戶的聊天集合列表,當用戶點擊聊天集合中的某條記錄,跳轉到對應的/pages/Front/WeChat用戶聊天界面,并將當前用戶ID和聊天對方的用戶ID傳遞到該聊天界面,進來界面就調用/WechatMessage/List接口獲取聊天信息。用戶發送聊天內容,調用SendMessage進行發送消息,調用后端接口?/WechatMessage/CheckCanSendMessage,傳入當前用戶ID、對方用戶ID和消息內容,調用websocket.SendMessage方法,發送消息,并在發送后清空消息內容。實時聊天界面圖如圖4-4所示。

2.1.4?附近話題功能實現

附近話題模塊,采用瀑布流布局展示話題,將話題數據分為左右兩列leftItems和rightItems分別渲染,通過NearByListApi方法從后端接口/Topic/NearBy獲取附近話題數據,通過用戶Id查詢用戶表,獲取用戶信息,得到用戶的經緯度,從數據庫獲取所有審核通過且合法的話題,將實體對象轉換為傳輸模型,處理每個話題的距離位置,需要過濾掉超過300公里的話題信息,并按照距離進行排序。用戶可點擊話題卡片,觸發goToDetail方法跳轉到話題詳情頁,查看話題詳情信息。附近話題界面圖如圖4-5所示。

2.1.5?發布話題功能實現

小程序端,用戶可進行發布話題,進入/pages/Front/TopicEdit界面,前端使用uni-forms組件構建表單,包含標題、話題類型、可見范圍、封面、詳細圖、分享內容等必填項。點擊“提交”按鈕觸發CreateOrEditAsync方法,進行表單校驗、用戶確認后,將表單數據通過/Topic/CreateOrEdit接口,查詢用戶是否登錄,通過用戶Id查詢用戶表數據,檢查用戶是否處于發帖限制時間內,若在限制時間內則拋出異常,聲明一個話題Topic實體,將話題內容賦值給Topic實體,調用數據庫的新增方法。發布話題界面圖如圖4-6所示。

2.1.6?話題評論功能實現

用戶進入小程序,可進行瀏覽話題,通過/Comment/List獲取評論列表,查詢數據庫Comment表的列表數據,進行展示在話題評論區。用戶可發表評論,調用/Comment/CreateOrEdit進行添加評論,判斷用戶賬號是否正常,若正常,聲明一個Comment評論實體,把前端傳入的input參數拷貝到評論實體,調用數據庫的增加方法進行新增。話題評論界面圖如圖4-7所示。

2.1.7?數據分析功能實現

使用qiun-data-charts組件渲染兩個圖表,折線圖展示展示話題最近15天的瀏覽量趨勢,柱狀圖展示最近互動活躍排行。通過onShow生命周期鉤子調用后端接口獲取圖表數據,調用/Topic/MyLast15DaysViewCount接口,通過用戶Id查詢Topic話題比表,獲取當前用戶發布的所有話題,并查詢這些話題的瀏覽記錄,遍歷最近的15天,按天統計瀏覽數量,將統計結果封裝為Map,包含日期和瀏覽量,添加到結果列表中。調用后端接口/Topic/InteractionActiveCount,通過用戶Id查詢該用戶的所有話題,查詢評論過這些話題的用戶,查詢關注的當前用戶的用戶,查詢給當前用戶帖子點贊的用戶,查詢收藏當前用戶帖子的用戶。每條評論計1分,每個關注計5分,每個點贊計1分,每個收藏計1分,將用戶Id和對應的活躍值整理成結果列表返回。數據分析界面圖如圖4-8所示。

2.2?管理員模塊實現

2.2.1 用戶管理實現

管理員可以進行管理系統的所有用戶信息,可進行增刪改查、導出操作。點擊新增按鈕,彈出新增對話框,輸入賬號、密碼、角色等信息進行新增,調用/User/CreateOrEdit接口進行新增;點擊導出,調用/User/Export接口執行導出操作,創建Excel工作簿和工作表,設置導出的表頭內容包含賬號,密碼,姓名,郵箱,手機號碼,用戶角色,出生年月。遍歷用戶數據列表,將對應的數據填充到對應的單元格,設置響應類型為二進制流,通過時間戳設置文件名,并將Excel內容寫入響應輸出流。用戶管理界面圖如圖4-9所示。

2.2.2 話題管理實現

話題管理界面,支持管理員通過標題、話題類型input框查詢話題信息,調用/Topic/List接口,從數據庫進行查詢獲取話題表的數據,將話題列表以JSON格式返回給前端,展示話題信息,包含標題、話題類型、封面等信息。管理員可以進行審核用戶發布的話題,管理員可以通過話題的信息決定是否審核通過,當點擊審核通過,調用/Topic/CreateOrEdit接口,修改話題的審核狀態為審核通過,用戶將可以在小程序端查看審核通過的話題;當點擊審核不通過,修改話題的審核狀態為審核失敗,用戶將無法查看審核不通過的話題。話題管理界面圖如圖4-10所示。

2.2.3 熱門話題柱狀圖實現

系統通過Echarts技術繪制柱狀圖表,用來展現近一周各個話題的瀏覽人次。圖表的橫軸表示星期,從六天前到今天。縱軸則表示瀏覽人次的數量。不同顏色的柱體分別對應著運動健身、旅行探險、美食烹飪等諸多話題。管理員只要看看柱體的高低和顏色,就能直觀地了解到近一周哪些話題更受關注。熱門話題柱狀圖界面圖如圖4-11所示。

2.2.4?客服功能實現

管理員可通過客服導航欄,進入客服/Admin/WeChat界面,實現了一個基于Vue的即時通訊聊天界面,通過Vuex獲取用戶Id和信息,展示管理員的頭像,通過HTTP請求/WechatCollection/List接口,通過管理員Id進行查詢數據庫會話集合WechatCollection表數據,將按照創建時間降序排序,把WechatCollection實體轉換成WechatCollection傳輸模型,返回給前端,進行展示管理員的好友列表,當管理員點擊其中一個會話集合,觸發SelectOtherUserChatBtn()方法,通過/WechatMessage/List請求獲取與該好友的聊天記錄,將獲取的聊天記錄賦值給MessageList,使用滾動的方式將聊天窗口滾動到底部。客戶功能界面圖如圖4-12所示。

4.2.5?詞云圖功能實現

通過Echarts實現的詞云圖,在組件掛載后,通過mounted生命周期鉤子調用CommentWordCloundEchartApi方法,調用后端/Topic/GetTopicWordCloud接口獲取詞云圖數據,從數據庫查詢話題表已被審核的話題標題,使用HanLP分詞器對每個標題進行分詞處理,統計每個詞語的出現次數,將統計結果轉換為特定格式返回到前端,使用$nextTick確保DOM完全渲染后再初始化ECharts,渲染詞云圖。詞云圖界面圖如圖4-13所示。

2.2.6?違規舉報功能實現

管理員可進行管理用戶提交的違規舉報內容,進入/Admin/ViolationReportList違規舉報界面,使用el-row和el-col進行柵格布局,支持舉報類型、舉報人等條件篩選,違規舉報列表通過自定義組件PaginationTable展示違規舉報列表,where參數在搜索表單提交,通過url調用/ViolationReport/List接口,從數據庫進行分頁查詢獲取ViolationReport表違規舉報數據,返回給前端進行展示在列表。管理員進行處理違規舉報內容,核對用戶是否違規,選擇處罰類型和處理結果進行處理,調用/ViolationReport/Audit接口,通過違規的用戶Id獲取用戶信息,根據管理員設置的處罰類型進行修改用戶賬號,比如禁言、永久封號等處理,修改用戶的信息。修改ViolationReport違規舉報實體的處理方式,將觸發類型和處理結果保存在該違規舉報表中。違規舉報管理界面圖如圖4-14所示。

圖4-14?違規舉報管理界面圖

2.2.7?違規詞功能實現

管理員可進行設置違規詞,維護違規詞,通過新增違規詞對話框,選擇違規嚴重程度,填寫違規詞,調用/ViolationWord/CreateOrEdit,聲明一個ViolationReport違規詞實體,調用數據庫saveOrUpdate的新增方法,為違規詞表新增一條數據。管理員可修改違規詞信息,通過修改違規詞對話框,修改違規詞內容,調用/ViolationWord/CreateOrEdit接口,傳入違規詞Id信息,調用數據庫的違規詞修改方法,進行修改違規詞。可刪除違規詞,調用/ViolationWord/Deleted刪除違規詞,通過ViolationWordMapper.selectById()方法獲取該違規詞信息,調用deleteById()進行刪除。用戶在發布話題、評論時,系統將會檢測違規詞,當輸入的內容有違規詞,將會提示用戶。違規詞管理界面圖如圖4-15所示。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/pingmian/88075.shtml
繁體地址,請注明出處:http://hk.pswp.cn/pingmian/88075.shtml
英文地址,請注明出處:http://en.pswp.cn/pingmian/88075.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

部署NextCloud AIO + Frp + nginx-proxy-manager內網穿透私有云服務

網絡拓撲 假設已有域名為nextcloud.yourhost.com 用戶通過域名https訪問 -> Nginx -> frps -> frpc -> NextCloud 其中Nginx和frps安裝在具有公網IP的服務器上,frpc和NextCloud安裝在內網服務器中。 Nginx配置 通過docker安裝nginx-proxy-manager 外…

【源力覺醒 創作者計劃】文心開源大模型ERNIE-4.5-0.3B-Paddle私有化部署保姆級教程及技術架構探索

一起來輕松玩轉文心大模型吧👉一文心大模型免費下載地址: https://ai.gitcode.com/theme/1939325484087291906 前言 2025年6月30日,百度正式開源文心大模型4.5系列(ERNIE 4.5),涵蓋10款不同參數規模的模型&#xff0…

大模型面試:如何解決幻覺問題

在大模型面試中回答“如何解決幻覺”問題時,需要展現你對問題本質的理解、技術方案的掌握以及工程實踐的洞察。以下是一個結構化的回答框架和關鍵點,供你參考:回答框架:問題理解 -> 解決方案 -> 總結 1. 明確問題&#xff0…

matlab實現五自由度機械臂阻抗控制下的力跟蹤

五自由度機械臂阻抗控制下的力跟蹤,可以實現對力的跟蹤反饋,基于MATLAB的機器人工具箱 eyebot.m , 767 zuakang_wailiraodong.m , 2568 colormp.mat , 682

excel日志表介紹

在Excel中制作“日志表事物”(可理解為記錄事務的日志表格),通常用于系統性追蹤事件、任務、操作或數據變化。以下從表格設計、核心要素、制作步驟、函數應用及場景案例等方面詳細說明,幫助你高效創建和使用事務日志表。 一、日志…

汽車信息安全 -- SHE密鑰更新小細節

之前我們把SHE密鑰更新流程做了梳理,汽車信息安全 -- SHE 密鑰更新流程 但在實際做SHE Emulation的時候還是發現了問題,例如如果想更新SHE Key ID等于30,會如何影響M1-M5的值呢?。 今天就聊聊關于幾家對于SHE Key的管理。 1. N…

Spring Boot配置優先級完全指南:實戰解析覆蓋規則

一、結論Spring Boot 中,位置越靠后優先級越高,外部配置壓倒內部配置,命令行參數擁有最高優先權。案例: 在一次生產事故中,某團隊通過 application-prod.properties 將服務端口設為 9000,但某運維人員在啟動…

嵌入式數據庫sqlite測試程序

繼上篇對嵌入式數據庫sqlite的移植和注意項,以及使用命令行測試之后,本篇對其進行了更進一步的程序測試,以備近期在項目中使用。測試程序及說明如下:/**************** 相關函數說明 ******************/ /* (1)sqlite3_open的函…

【學習篇】SQL復雜查詢學習

要求:能對千萬行級別的大表優化讀寫效率。 難點:如何創建千萬行級別的大表 MySQL數據庫的高效查詢不僅依賴于合理的表結構和索引設計,還需要掌握高級查詢技巧和性能優化方法。 數據表與數據表之間關系三種:實體之間關系 多對多…

Sequential Predictive Modeling of Clinical Trial Outcome with Meta-Learning解讀

SPOT(Sequential Predictive Modeling of Clinical Trial Outcome with Meta-Learning)模型是用于臨床試驗結果預測的模型, 借鑒了模型無關元學習(MAML,Model-Agnostic Meta-Learning)的框架,將模型參數分為全局共享參數和任務特定參數,以平衡跨任務泛化與任務內適配:…

優先選擇列表而非數組及泛型類型的使用

數組與泛型的核心差異 協變性與不變性 數組采用協變(covariant)類型規則:若Sub是Super的子類型,則數組類型Sub[]也是Super[]的子類型。這種設計允許以下代碼通過編譯: Object[] objectArray = new Long[1]; // 編譯通過 objectArray[0

自動化Prompt生成平臺的研發體系設計

一份輕松不啰嗦的自動化Prompt平臺研發攻略 📑 目錄 一、項目背景二、平臺整體架構設計三、核心功能模塊解析四、自動化流程設計五、樣式與跨平臺規范六、總結與展望 一、項目背景 在大模型應用爆發的今天,不寫Prompt的工程師,正在變成“寫…

[Swarm] 上下文變量 | 接入function功能調用 | Mcp

第3章:上下文變量 歡迎回到swarm! 在前兩章中,我們學習了作為對話指揮者的Swarm框架和具備指令與技能的專用AI角色智能體。(智能體就相當于是給用戶問題 已經寫好了的提示詞,在用戶提問時自動加入,以此來給用戶更好的…

【Unity開發】Unity實現第一人稱視角與第三人稱視角切換功能

一、效果展示 第三人稱視角:固定攝像機,無任何操作 第一人稱視角:用戶可以通過wsad進行前后左右移動,qe進行上升下降操作 不同視角之間切換會有一個過渡動畫,切換第一視角的初始位置始終為原點(0,0,0&am…

2025全球數字經濟大會—云智算安全論壇暨第三屆“SecGo論壇”成功召開!共筑安全新生態

2025年7月3日,由全球數字經濟大會組委會主辦,中國信息通信研究院、中國通信標準化協會承辦的全球數字經濟大會—云智算安全論壇暨第三屆“SecGo論壇”在京召開。北京市經濟和信息化局副局長顧瑾栩、中國通信標準化協會副理事長兼秘書長代曉慧、中國信通院…

KingbaseES聚焦產品上線:金倉數據庫在線體驗平臺上線,開啟數據庫實踐新征程

KingbaseES聚焦產品上線:金倉數據庫在線體驗平臺上線,開啟數據庫實踐新征程KingbaseES 在線體驗平臺是為數據庫使用者、開發者、架構師及 DBA 打造的輕量化實踐平臺,無需本地安裝數據庫環境,通過瀏覽器即可快速上手,降…

LLMs之DeepSeek:AI模型市場深度分析:DeepSeek的挑戰與機遇,模型市場份額、Token經濟學與未來發展

LLMs之DeepSeek:AI模型市場深度分析:DeepSeek的挑戰與機遇,模型市場份額、Token經濟學與未來發展 導讀:該文章主要分析了中國大語言模型DeepSeek R1發布150天后的市場表現、Token經濟學的影響以及AI模型市場的競爭格局。文章指出&…

服裝零售企業跨區域運營難題破解方案

在服裝零售行業,本地化業務系統因承載庫存、銷售等核心數據,成為眾多企業的選擇。然而對于門店分布廣、規模較大的服裝銷售商而言,總部系統與各地門店的遠程連接卻面臨挑戰:員工遠程辦公效率低、POS機數據同步滯后、跨區域監管難度…

- 思考小記

對于 分布式系統,我還是抱有敬畏之心的,因為其內容過于龐大;我在學習基礎編程的時候走過一個最大的彎路就是過度追求技術而忽視了基礎編碼能力,當時在學習springboot的時候,覺得那些新內容都是那么新奇高大上&#xff…

裝備制造數字孿生底座平臺

在《中國制造2025》和《“十四五”智能制造發展規劃》的推動下,數字孿生技術被7次重點提及,成為裝備制造業智能化升級的核心戰略。從航空航天到重型機械,從設計驗證到運維優化,數字孿生底座平臺正通過“虛實映射”與“實時交互”&…