日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

基于SpringBoot 适合学习的开源社区平台

發(fā)布時間:2024/3/7 javascript 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 基于SpringBoot 适合学习的开源社区平台 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

今天TJ君要給大家分享的是一個集合各種技術(shù)的開源社區(qū)平臺,Echo

平臺使用的主要技術(shù)有:SpringBoot + MyBatis + MySQL + Redis + Kafka + Elasticsearch + Spring Security,常見社區(qū)平臺中應(yīng)有的帖子、評論、私信、系統(tǒng)通知、點贊、關(guān)注、搜索、用戶設(shè)置、數(shù)據(jù)統(tǒng)計等模塊都可以支持實現(xiàn)。

前后端主要用到的技術(shù)棧有:

  • 前端

    • Thymeleaf

    • Bootstrap 4.x

    • Jquery

    • Ajax

  • 后端

    • Spring

    • Spring Boot 2.1.5 RELEASE

    • Spring MVC

    • ORM:MyBatis

    • 數(shù)據(jù)庫:MySQL 5.7

    • 分布式緩存:Redis

    • 本地緩存:Caffeine

    • 消息隊列:Kafka 2.13-2.7.0

    • 搜索引擎:Elasticsearch 6.4.3

    • 安全:Spring Security

    • 郵件任務(wù):Spring Mail

    • 分布式定時任務(wù):Spring Quartz

    • 日志:SLF4J(日志接口) + Logback(日志實現(xiàn))

這些技術(shù)棧與功能列表的詳細(xì)對應(yīng)關(guān)系可從下圖看出:

TJ君簡單看了一下,如果要更進(jìn)一步詳細(xì)描述平臺已經(jīng)實現(xiàn)的功能的話,就是:

  • 注冊

  • 登錄 | 登出

    • 動態(tài)生成驗證碼

    • 記住我

  • 賬號設(shè)置

    • 修改頭像

    • 修改密碼

  • 過濾敏感詞

    • 前綴樹

  • 帖子模塊

    • 發(fā)布帖子(過濾敏感詞)

    • 分頁顯示所有的帖子

      • 支持按照 “發(fā)帖時間” 顯示

      • 支持按照 “熱度排行” 顯示(Spring Quartz)

    • 查看帖子詳情

    • 權(quán)限管理(Spring Security + Thymeleaf Security)

      • 未登錄用戶無法發(fā)帖

      • “版主” 可以看到帖子的置頂和加精按鈕并執(zhí)行相應(yīng)操作

      • “管理員” 可以看到帖子的刪除按鈕并執(zhí)行相應(yīng)操作

      • “普通用戶” 無法看到帖子的置頂、加精、刪除按鈕,也無法執(zhí)行相應(yīng)操作

  • 評論模塊

    • 發(fā)布對帖子的評論(過濾敏感詞)

    • 分頁顯示評論

    • 發(fā)布對評論的回復(fù)(過濾敏感詞)

    • 權(quán)限管理(Spring Security)

      • 未登錄用戶無法使用評論功能

  • 私信模塊

    • 發(fā)送私信(過濾敏感詞)

    • 私信列表

      • 查詢當(dāng)前用戶的會話列表

      • 每個會話只顯示一條最新的私信

      • 支持分頁顯示

    • 私信詳情

      • 查詢某個會話所包含的所有私信

      • 訪問私信詳情時,將顯示的私信設(shè)為已讀狀態(tài)

      • 支持分頁顯示

    • 權(quán)限管理(Spring Security)

  • 統(tǒng)一處理 404 / 500 異常

    • 普通請求異常

    • 異步請求異常

  • 統(tǒng)一記錄日志

  • 點贊模塊

    • 支持對帖子、評論/回復(fù)點贊

    • 第 1 次點贊,第 2 次取消點贊

    • 首頁統(tǒng)計帖子的點贊數(shù)量

    • 詳情頁統(tǒng)計帖子和評論/回復(fù)的點贊數(shù)量

    • 詳情頁顯示當(dāng)前登錄用戶的點贊狀態(tài)(贊過了則顯示已贊)

    • 統(tǒng)計我的獲贊數(shù)量

    • 權(quán)限管理(Spring Security)

      • 未登錄用戶無法使用點贊相關(guān)功能

  • 關(guān)注模塊

    • 關(guān)注功能

    • 取消關(guān)注功能

    • 統(tǒng)計用戶的關(guān)注數(shù)和粉絲數(shù)

    • 我的關(guān)注列表(查詢某個用戶關(guān)注的人),支持分頁

    • 我的粉絲列表(查詢某個用戶的粉絲),支持分頁

    • 權(quán)限管理(Spring Security)

      • 未登錄用戶無法使用關(guān)注相關(guān)功能

  • 系統(tǒng)通知模塊

    • 通知列表

      • 顯示評論、點贊、關(guān)注三種類型的通知

    • 通知詳情

      • 分頁顯示某一類主題所包含的通知

      • 進(jìn)入某種類型的系統(tǒng)通知詳情,則將該頁的所有未讀的系統(tǒng)通知狀態(tài)設(shè)置為已讀

    • 未讀數(shù)量

      • 分別顯示每種類型的系統(tǒng)通知的未讀數(shù)量

      • 顯示所有系統(tǒng)通知的未讀數(shù)量

    • 導(dǎo)航欄顯示所有消息的未讀數(shù)量(未讀私信 + 未讀系統(tǒng)通知)

    • 權(quán)限管理(Spring Security)

      • 未登錄用戶無法使用系統(tǒng)通知功能

  • 搜索模塊

  • 網(wǎng)站數(shù)據(jù)統(tǒng)計(管理員專屬)

    • 獨立訪客 UV

      • 支持單日查詢和區(qū)間日期查詢

    • 日活躍用戶 DAU

      • 支持單日查詢和區(qū)間日期查詢

    • 權(quán)限管理(Spring Security)

      • 只有管理員可以查看網(wǎng)站數(shù)據(jù)統(tǒng)計

  • 優(yōu)化網(wǎng)站性能

    • 處理每次請求時,都要通過攔截器根據(jù)登錄憑證查詢用戶信息,訪問的頻率非常高。因此將已成功登錄的用戶信息在緩存 Redis 中保存一段時間,查詢用戶信息的時候優(yōu)先從緩存中取值;若緩存中沒有該用戶信息,則將其存入緩存;用戶信息變更時清除對應(yīng)的緩存數(shù)據(jù);

    • 引入本地緩存 Caffeine,緩存熱帖列表和帖子的總數(shù),避免緩存雪崩(這里面還能再加一層二級緩存 Redis)。

本地部署

先確保一下環(huán)境都已安裝?Java 8、 MySQL 5.7、 Redis、 Kafka 2.13-2.7.0、 Elasticsearch 6.4.3

然后修改本地配置文件信息:

  • application-develop.properties:

    • MySQL

    • Spring Mail(郵箱需要開啟 SMTP 服務(wù))

    • Kafka:consumer.group-id(該字段見 Kafka 安裝包中的 consumer.proerties,可自行修改, 修改完畢后需要重啟 Kafka)

    • Elasticsearch:cluster-name(該字段見 Elasticsearch 安裝包中的 elasticsearch.yml,可自行修改)

    • 七牛云(需要新建一個七牛云的對象存儲空間,用來存放上傳的頭像圖片)

  • logback-spring-develop.xml:

    • LOG_PATH:日志存放的位置

需要注意的是,每次運行需要打開如下軟件:

  • MySQL

  • Redis

  • Elasticsearch

  • Kafka

另外,還需要建好數(shù)據(jù)庫 greatecommunity,然后依次運行項目 sql 文件夾下的這幾個 sql 文件建立數(shù)據(jù)庫表:

同時針對每一個功能模塊,平臺作者還提供了自己的思維導(dǎo)圖,方便用戶理解:

例如注冊功能

登錄登出功能

幾乎每個功能都有,也方便小伙伴們進(jìn)行理解和學(xué)習(xí)。

最后看下實際的運行效果:

預(yù)祝大家學(xué)習(xí)愉快~~~項目地址如下:

https://github.com/Veal98/Echo

TJ君將之前發(fā)過的各種項目及工具進(jìn)行了整理,收錄到了GitHub項目,歡迎各位小伙伴光臨Star,地址如下:https://github.com/Wechat-TJ/TJ-WORLD-FORU

總結(jié)

以上是生活随笔為你收集整理的基于SpringBoot 适合学习的开源社区平台的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 亚洲欧美日本一区二区三区 | 国产又爽又黄的激情精品视频 | 亚洲第一色图 | 美女啪啪一区二区 | 4438全国成人免费 | 日韩成人性视频 | 亚洲石原莉奈一区二区在线观看 | 名校风暴在线观看免费高清完整 | 9人人澡人人爽人人精品 | 污视频在线免费 | 亚洲免费大片 | 少妇又色又爽又黄的视频 | 久久福利影院 | 久久国产色 | 辟里啪啦国语版免费观看 | 91热爆视频 | 河北彩花69xx精品一区 | 蜜臀av性久久久久蜜臀aⅴ麻豆 | 国产91在线 | 亚洲 | 美女扒开尿口给男人桶 | 欧美中文字幕在线视频 | www.超碰在线观看 | 高清av免费| av集中营| 亚洲精品国产99 | 欧美高清精品一区二区 | 免费啪啪小视频 | 韩国伦理大片 | 美女吞精视频 | 中文字幕精品在线观看 | 在线看黄网址 | 另类一区| 天堂www中文在线资源 | 国产亚洲片 | 成人免费一区二区三区在线观看 | 福利视频一区二区 | 潘金莲一级淫片aaaaaa播放 | 91在线免费看片 | 91射区 | 青青操在线观看视频 | 人妻熟女一区二区aⅴ水 | 国产精品伦一区二区三区免费看 | 色老头一区 | 激情福利网 | 国产精品自拍第一页 | 国产一二三 | 九九久久视频 | 成人毛片100免费观看 | 日本在线高清 | 亚洲一级Av无码毛片久久精品 | 在线免费看mv的网站入口 | 香蕉人妻av久久久久天天 | 久久亚洲欧美 | 91最新国产 | 久久五十路| 久久视频一区二区 | 久久这里只有精品23 | 麻豆91精品91久久久 | 国产成人精品一区二区三区在线 | 国产中文在线视频 | 狠狠干狠狠爱 | 玉女心经是什么意思 | 潮喷失禁大喷水aⅴ无码 | 天堂网一区 | 成人v片| 91精品国产成人观看 | 亚洲成a人v欧美综合天堂麻豆 | 欧美日韩国产一区二区三区在线观看 | 久久成人综合 | 可以在线观看的黄色 | 日本丰满少妇一区二区三区 | 成人91免费| 哈利波特3在线观看免费版英文版 | 国产精品一二区在线观看 | 白丝美女喷水 | 国产精品15p | 水蜜桃色314在线观看 | 欧美深夜在线 | 日韩在线不卡视频 | 国产精品综合视频 | 亚洲最大在线视频 | 精品国产乱码久久久久久影片 | 天天精品视频 | 日日碰狠狠添天天爽无码av | 中文字幕黄色 | 人妻与黑人一区二区三区 | 日本xxxxxxxxx18| 女性向小h片资源在线观看 日本天天操 | 国产露脸150部国语对白 | 亚洲精品在线看 | 日韩91精品 | 农村少妇无套内谢粗又长 | 日本午夜电影 | 奇米精品一区二区三区四区 | 电影《两个尼姑》免费播放 | 国产精品av久久久久久无 | 999zyz玖玖资源站永久 | 精品国产一区二区三区无码 | 黄色观看网站 |