国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于SpringBoot 的小型日常交流論壇的設(shè)計(jì)與實(shí)現(xiàn)

2020-10-13 08:58:52李忠毅
現(xiàn)代計(jì)算機(jī) 2020年25期
關(guān)鍵詞:帖子頭像數(shù)據(jù)庫(kù)

李忠毅

(中山大學(xué)新華學(xué)院信息科學(xué)學(xué)院,東莞523133)

0 引言

過去的日常交流論或者博客,后端大多使用JSP、SSH、SSM 技術(shù)進(jìn)行實(shí)現(xiàn),基于這幾種技術(shù)實(shí)現(xiàn),無一例外都會(huì)遇到大問題:大量的.xml 文件使人眼花繚亂,對(duì)于建立個(gè)人論壇博客有極大的阻礙,如果使用Spring?Boot 進(jìn)行后端技術(shù),可以做到零個(gè).xml 文件,極大地降低了項(xiàng)目的復(fù)雜性,前端技術(shù)使用Bootstrap 和Thyme?leaf,實(shí)現(xiàn)前后端分離,MVC 架構(gòu)降低了前后端的耦合,是整個(gè)系統(tǒng)擁有高內(nèi)聚,低耦合的特性,Bootstrap 作為響應(yīng)性布局框架,使個(gè)人博客可以跨平臺(tái)使用,實(shí)現(xiàn)一套代碼適配多個(gè)平臺(tái)。

1 開發(fā)技術(shù)與工具

開發(fā)環(huán)境:JDK 1.8,Tomcat 服務(wù)器。

開發(fā)工具:后端開發(fā):IDEA 2020.1,前端開發(fā):WebStrom,數(shù)據(jù)庫(kù):MySQL 5.7,數(shù)據(jù)庫(kù)可視化軟件:Navicate。

開發(fā)技術(shù):SpringBoot 后端技術(shù)、MyBatis、Boot?strap。

2 系統(tǒng)設(shè)計(jì)

2.1 模塊設(shè)計(jì)

小型日常交流論壇的模塊有三個(gè):登錄注冊(cè)模塊、用戶操作模塊、管理員模塊。

(1)用戶登錄注冊(cè)模塊

用戶可以在網(wǎng)頁進(jìn)行登錄注冊(cè)功能,擁有登錄狀態(tài)的用戶才可以瀏覽帖子詳情,發(fā)新帖子,對(duì)帖子進(jìn)行回復(fù),未登錄用戶只能在主頁瀏覽帖子的標(biāo)題和作者。

(2)用戶的操作模塊

已經(jīng)登錄的用戶可以查看帖子,點(diǎn)贊帖子,搜索帖子,回復(fù)帖子,回復(fù)別人的回復(fù),點(diǎn)贊回復(fù),修改和刪除自己的帖子。此外還可以進(jìn)行修改密碼,修改昵稱,修改個(gè)人信息,上傳頭像的操作。

(3)管理員模塊

管理員登錄后可以直接對(duì)所有的帖子進(jìn)行刪除和修改操作,對(duì)所有賬號(hào)進(jìn)行管理。

2.2 數(shù)據(jù)庫(kù)設(shè)計(jì)

數(shù)據(jù)庫(kù)設(shè)計(jì)在動(dòng)態(tài)網(wǎng)站的設(shè)計(jì)中占有非常重要的地位,數(shù)據(jù)庫(kù)結(jié)構(gòu)設(shè)計(jì)的好壞會(huì)直接影響到應(yīng)用程序的運(yùn)行效率。合理的數(shù)據(jù)庫(kù)結(jié)構(gòu)設(shè)計(jì)能夠提高數(shù)據(jù)讀取與存儲(chǔ)的效率,能夠保證數(shù)據(jù)的一致性和完整性。該系統(tǒng)的數(shù)據(jù)庫(kù)使用MySQL 來設(shè)計(jì)和實(shí)現(xiàn)[2]。

小型日常交流論壇需要用到4 個(gè)數(shù)據(jù)表:用戶表、帖子表、回復(fù)表、二次回復(fù)表,數(shù)據(jù)庫(kù)ER 圖如圖1所示。

圖1 數(shù)據(jù)庫(kù)的ER圖

(1)用戶表用于存放用戶id,用戶名,用戶密碼,頭像地址,sessionID,其中頭像地址為空時(shí)(用戶未上傳頭像)使用默認(rèn)頭像,sessionID 用于保持登錄狀態(tài)。

(2)帖子表用于存放帖子id,帖子標(biāo)題,帖子內(nèi)容,發(fā)帖人ID。

(3)回復(fù)表用于存放帖子id,回復(fù)id,評(píng)論人id,回復(fù)時(shí)間,評(píng)論內(nèi)容,修改時(shí)間,評(píng)論人姓名,評(píng)論的隨機(jī)id,點(diǎn)贊次數(shù),其中重要的是平人的隨機(jī)id,給每一條評(píng)論賦予唯一標(biāo)識(shí)。

(4)二次回復(fù)表存放二次回復(fù)id,回復(fù)內(nèi)容,帖子id,創(chuàng)建時(shí)間,一級(jí)回復(fù)的隨機(jī)id,評(píng)論人姓名。

3 系統(tǒng)實(shí)現(xiàn)

系統(tǒng)采用MVC 結(jié)構(gòu)進(jìn)行實(shí)現(xiàn),對(duì)視圖層、模型層、控制層進(jìn)行了分離,實(shí)現(xiàn)高內(nèi)聚低耦合的特點(diǎn)。其中,視圖層使用Bootstrap 進(jìn)行設(shè)計(jì)和實(shí)現(xiàn),其跨平臺(tái)的特性能夠做到一套代碼多個(gè)平臺(tái)使用,極大減輕了開發(fā)者的負(fù)擔(dān)。模型層也是數(shù)據(jù)訪問層,進(jìn)行對(duì)數(shù)據(jù)庫(kù)的查找、添加、修改和刪除,實(shí)現(xiàn)數(shù)據(jù)持久化操作??刂茖訉?shí)現(xiàn)了業(yè)務(wù)邏輯,對(duì)模型層進(jìn)行控制,實(shí)現(xiàn)用戶的需求。

3.1 發(fā)帖功能模塊

發(fā)帖功能是一個(gè)小型日常交流論壇的核心,用戶在登錄后即可獲得發(fā)帖功能。

發(fā)帖功能的代碼實(shí)現(xiàn)如下所示:

圖2 發(fā)帖功能流程圖

3.2 展示帖子模塊

展示帖子也是論壇的核心功能,后端通過JDBC 操作數(shù)據(jù)庫(kù)獲取數(shù)據(jù)并實(shí)現(xiàn)分頁功能,通過model 方法給前端返回?cái)?shù)據(jù),前端對(duì)數(shù)據(jù)進(jìn)行循環(huán)遍歷,展示到主頁面上供用戶查看,核心代碼段如下:

圖3 展示帖子流程圖

3.3 維持登錄狀態(tài)模塊

小型日常交流論壇經(jīng)常會(huì)有用戶登錄,在Spring?Boot 中使用攔截器,可以便捷地通過cookie 保持用戶的登錄態(tài),減少用戶登錄次數(shù),方便用戶操作,提高了用戶體驗(yàn),下面為核心代碼段:

4 系統(tǒng)運(yùn)行與測(cè)試分析

系統(tǒng)功能實(shí)現(xiàn)完成之后,需要進(jìn)行各個(gè)模塊的測(cè)試。不僅是為了保障模塊能夠正常運(yùn)行,還需要保障系統(tǒng)符合設(shè)計(jì)需求。

系統(tǒng)測(cè)試:

表1 測(cè)試環(huán)境搭建

在表1 的環(huán)境下,進(jìn)行如下測(cè)試,得到表2。

表2 系統(tǒng)功能測(cè)試

5 結(jié)語

本文使用了十分熱門的SpringBoot 后端技術(shù)和Bootstrap 前端技術(shù)搭建了小型日常交流論壇。基于這兩項(xiàng)技術(shù)搭建的論壇界面靈活、代碼量少、響應(yīng)速度快,極大地提高了程序員的開發(fā)效率。通過介紹需求分析、系統(tǒng)設(shè)計(jì)、數(shù)據(jù)庫(kù)設(shè)計(jì)、核心功能實(shí)現(xiàn),對(duì)基于SpringBoot 技術(shù)的平臺(tái)開發(fā)具有一定的參考意義。

猜你喜歡
帖子頭像數(shù)據(jù)庫(kù)
可愛的卡通頭像
童話世界(2019年29期)2019-11-23 09:05:22
用鑰匙畫頭像
數(shù)據(jù)庫(kù)
暴力老媽
數(shù)據(jù)庫(kù)
數(shù)據(jù)庫(kù)
數(shù)據(jù)庫(kù)
情事圈點(diǎn)
女性天地(2012年11期)2012-04-29 00:44:03
高手是這樣拍馬屁的
小品文選刊(2009年7期)2009-05-25 09:59:52
這匣子放人頭
莲花县| 淳安县| 师宗县| 祥云县| 乐昌市| 建湖县| 论坛| 开封市| 伽师县| 云阳县| 交城县| 丹江口市| 哈巴河县| 华安县| 吉首市| 大邑县| 日土县| 库尔勒市| 盐山县| 偏关县| 海淀区| 翁牛特旗| 临邑县| 临海市| 永康市| 永仁县| 佛坪县| 贵德县| 襄垣县| 勐海县| 岱山县| 东丽区| 嘉禾县| 永登县| 松桃| 武义县| 梁平县| 永昌县| 自贡市| 资源县| 柘城县|