摘 ?要
隨著當下社會的發展,互聯網已經成為時代的主流,從此進入了互聯網時代,對大部分人來說,互聯網在日常生活中的應用是越來越頻繁,大家都在互聯網當中互相交流、學習、娛樂。博客正是扮演這樣一個角色。博客已成為當今互聯網上最受歡迎的一個信息交流渠道,它允許人們通過文字的方式分享他們的觀點、經歷、思考和收獲。博客管理平臺的出現,對于博客管理者來說,博客管理平臺可以幫助他們更加方便地管理,提高工作效率。對于博客用戶來說,博客管理平臺可以幫助他們更加方便地獲取信息,分享自己的經驗和見解,促進了信息的共享和傳播,以及加快了社會的進步和知識的普及。
本系統是基于Vue+Spring Boot的博客管理平臺。一開始,闡述了本次研究的目的和意義,緊接著對當中所需要應用的關鍵技術和需求進行分析,落實了所需要具備的功能和系統需求,將整個項目分為四大模塊:文章管理、用戶管理、欄目管理、數據統計。接下來進行了有關系統設計的一系列操作。最終,本次開發進行使用Vue+Spring Boot技術棧,項目的后臺數據庫則是采用MySQL,實現了文章的發布、編輯、管理等操作功能。通過本文的介紹,讀者可以了解到設計與實現基于Vue+Spring Boot的博客管理平臺的全過程,對于學習和使用該技術棧的讀者具有一定的參考價值。
關鍵詞:博客(Blog);管理系統;信息共享;Spring Boot框架 ? ? ? ? ? ? ? ? ? ? ? ? ?
Abstract
With the development of current society, the Internet has become the mainstream of the era, and has entered the Internet era. For most people, the application of the Internet in daily life is becoming increasingly frequent, and everyone communicates, learns, and entertains with each other through the Internet. Blogs play such a role. Blogs have become one of the most popular channels of information exchange on the Internet today, allowing people to share their views, experiences, thoughts, and gains through text. The emergence of a blog management platform can help blog managers manage more easily and improve their work efficiency. For blog users, the blog management platform can help them more easily access information, share their experiences and insights, promote the sharing and dissemination of information, and contribute to the popularization of knowledge and social progress.
This article discusses the design and implementation of a blog management platform based on Vue+Spring Boot. At the beginning, the purpose and significance of this study were elaborated, followed by an analysis of the key technologies and requirements that need to be applied, and the necessary functions and system requirements were implemented. The entire project was divided into four modules: article management, user management, column management, and data statistics. Next, a series of operations related to system design were carried out. In the end, the Vue+Spring Boot technology stack was used in this development, and MySQL was used as the backend database for the project, achieving operational functions such as article publishing, editing, and management. Through the introduction of this article, readers can understand the entire process of designing and implementing a blog management platform based on Vue+Spring Boot, which has certain reference value for readers who learn and use this technology stack.
Keywords: blog,management system,information sharing,spring boot framework
目 ?錄
摘 ?要
Abstract
第1章 ?緒 ?論
1.1 ?課題背景及研究的目的和意義
1.2 ?國內外研究概述
1.3 ?本文的主要研究內容
第2章 ?博客管理平臺的關鍵技術分析
2.1 ?Vue.js技術
2.2 ?Spring Boot技術
2.3 ?Mybatis技術
2.4 ?MySQL數據庫
2.5 ?本章小結
第3章 ?博客管理平臺的需求分析
3.1 ?可行性分析
3.2 ?功能需求分析
3.2.1 ?文章管理模塊
3.2.2 ?用戶管理模塊
3.2.3 ?欄目管理模塊
3.2.4 ?數據統計模塊
3.3 ?非功能需求分析
3.4 ?本章小結
第4章 ?博客管理平臺的系統設計
4.1 ?系統總體架構設計
4.2 ?功能設計
4.3 ?系統流程圖
4.4 ?系統模塊設計
4.4.1 ?文章管理
4.4.2 ?用戶管理
4.4.3 ?欄目管理
4.4.4 ?數據統計
4.3 ?數據庫設計
4.3.1 ?實體關系設計
4.3.2 ?表的設計
4.4 ?本章小結
第5章 ?博客管理平臺的實現與測試
5.1 ?系統開發環境
5.2 ?功能實現
5.2.1 ?登陸功能模塊
5.2.2 ?文章管理模塊
5.2.3 ?用戶管理模塊
5.2.4 ?欄目管理模塊
5.2.5 ?數據統計模塊
5.3 ?測試
5.3.1 ?功能測試
5.3.2 ?兼容性測試
5.4 ?本章小結
結 ?論
參考文獻
原創性聲明
致 ?謝
附 ?錄
?
第1章 ?緒 ?論
1.1 ?課題背景及研究的目的和意義
當下人們生活的聯系與社交媒體已經是密不可分的狀態。據人民網研究院最新發布的2022移動互聯網藍皮書顯示,2021年底全球網民人數突破49億人,大約占據全球人口的63%。截止2023年初,中國網民人數突破10億人,互聯網普及率接近普通民眾的62.5%。超過全球網絡普及率平均水準,奠定了中國網絡大國的基礎[1]。其中博客作為社交媒體生態鏈中重要的一環,憑借其開放包容、生態圈完整的優點吸引著廣大用戶[2-3]。由于互聯網的普及和技術的進步,博客已經成為人們記錄生活、分享經驗、表達觀點的重要平臺。越來越多的人開始使用博客來記錄自己的思考、感悟和經驗,同時也有越來越多的企業、機構和個人開始通過博客來宣傳、推廣和交流。然而,隨著博客數量的增加,博客管理的難度也在不斷提高。傳統的博客發布方式主要是通過FTP上傳靜態頁面,這種方式不僅繁瑣而且難以管理。因此,為了提高博客的管理效率和可操作性,博客管理平臺應運而生。博客管理平臺提供了一個集成化的博客管理解決方案,用戶可以通過平臺直接發布、編輯、管理博客等操作。同時,博客管理平臺還提供了訪問量,幫助博客管理者了解博客的運營狀況,為博客的持續發展提供有力支持。因此,博客管理平臺的背景是博客的普及和發展,其目的在于為博客管理者提供一個方便、高效的管理工具,促進博客的發展和創新。
1.2 ?國內外研究概述
被公認為是最原始的博客是在1993年6月,由美國國家超級應用中心NCSA創建的。1994年1月,Justin Hall創建了個人網頁并將其命名為“Just’s Home Page”。1997年4月,Scripting News由Dave Winer開始出版,它是一個介紹技術界的一些動態的站點,這個網站是從最初的Davenet演變而來的,它也是一個個人網頁,可以實現信息的實時更新并且具有評論和鏈接的功能[4]。Weblog一詞由美國人工智能專家Jorn Barger在1997年12月提出。1998年博客作為通過網頁或網站鏈接形式出現在大眾視野,這不僅僅可以做到實現信息資源共享的目的。同時它的出現不僅使互聯網資源達到信息共享的目的,而且也漸漸過渡到“思想共享”階段[5]。博客是通過Weblog音譯過來,其最初表達的含義是網絡日志,后來簡述成Blog。Evan Williams在2006年創立了Twitter,David Karp在2007年創建了介于Twitter和blogger之間的Tumblr[6-8]。由于當下互聯網的快速發展,博客逐漸成為人們信息交流的一種新方式,人們在次不僅可以抒發自己的情感,同時還能分享心得。當下博客的用戶活躍數量數量龐大,在國內外都是一樣的狀況,已然成為人們不可或缺的一部分。
博客在中國的發展與國外對比中具有一定的滯后性。2002年,博客首次出現在中國,博客帶來的新鮮感不僅給廣大網民帶來前所未有的沖擊,而且在我國范圍內的傳播相當迅速,但是博客在那個時候并沒有得到人民的認同和關注,人民還是使用當時比較盛行的方式進行事物的發布與交流,比如BBS、大型網站等[9]。2005年網名的數量不斷上漲再加上國內的一些龍頭互聯網企業發現商機相繼加入進博客網站的開發與設計,其中包括網易、搜狐等互聯網龍頭公司,自此博客也就開始在廣大網友當中迅速傳播和使用,使其更具色彩,這一年也被業界稱為是博客的“大眾化年”。
1.3 ?本文的主要研究內容
本文研究內容是在B/S(瀏覽器/服務器)模式下對博客管理平臺進行開發,采用JavaScript和Java語言配合IDEA工具進行開發,采用技術框架主要為Vue+Spring Boot,通過需求分析,然后對系統開發流程進行設計和實現,最后對系統進行了測試,具體內容如下:
(1)對項目開發里面所使用的關鍵技術進行闡述。使用Spring Boot,Vue,Mybatis技術框架,同時使用MySQL數據庫。
(2)通過可行性研究和調查分析,一一闡述了本系統的功能性需求和非功能性需求,并且使用Visio繪圖工具對系統的模塊功能進行繪制解釋,構思了系統的整個流程思路。
(3)從系統的總體思路出發,對系統進行了設計,確立總體架構,確定系統流程,明確項目中的功能模塊,以及對項目相關的數據庫實體關系和表結構進行設計。
(4)描述了項目所使用的開發環境,借助分析設計出的具體功能模塊來進行相應模塊的實現和講解。
(5)在完成系統功能開發后,為保證系統后續能穩健運行減少出差錯的幾率,對系統各個方面進行相關測試,通過功能用例測試和兼容性測試對其實現完整開發過程。
第2章 ?博客管理平臺的關鍵技術分析
本章是對博客管理平臺所用到的關鍵技術進行闡述,包括對Vue.js框架、Spring Boot框架、MyBatis框架和MySQL數據庫等相關知識的介紹。
2.1 ?Vue.js技術
在Web前端框架早期只包含HTML、CSS和JavaScript三種技術,HTML管理頁面結構,相當于構造了系統的骨架;CSS負責頁面樣式,相當于賦予了模樣進行美化;JavaScript控制用戶與頁面的交互,相當于給予了行為呈現動態效果,三者分工明確[10]。這種模式看起來好像挺好但也不是十全十美的,當前端對性能和開發效率的要求也越來越高時,弊端也漸漸顯現。Vue.js是尤雨溪2013年在Google工作時期開發的一款輕量級前端框架。它受Angular的啟發而設計,目前已經成為了全世界三大前端框架之一。
Vue采用MVVM響應式編程模型(Model View ViewModel),是一款很容易上手的js庫,不僅能防止直接操作DOM,并且減少了DOM操作的復雜性。MVVM(Model View ViewModel)能實現頁面輸入改變數據并且能讓數據改變影響頁面數據展示和渲染,實現了簡化前端開發流程與業務處理的功能。MVVM設計模式架構圖如圖2-1所示[11]:
圖2-1 ?MVVM設計模式架構圖
Vue.js的主要特性包括響應式數據綁定、組件化開發、模板語法、虛擬DOM、生命周期鉤子函數等。首先響應式數據綁定能使視圖層與模型層保持同步,當數據發生變化時,視圖會自動更新,其次組件化開發將頁面拆分為多個組件,每個組件都有自己的狀態和行為,便于管理和復用,再者模板語法支持常見的指令和表達式,提高了開發效率,然后虛擬DOM技術實現快速渲染視圖,并最小化瀏覽器的重排和重繪操作,提升了性能,最后組件生命周期的不同階段提供了一系列鉤子函數,可以在不同階段執行相應的操作。相比其他框架,Vue.js的優勢在于其輕量級、易學易用、靈活可擴展等方面。Vue.js的體積小,渲染速度快,適合用于構建中小型的單頁面應用程序。同時,Vue.js的API設計簡潔明了,區別于AngularJS的繁瑣和React的函數式編程方式,讓開發者更容易理解和上手。Vue.js還提供了豐富的插件和庫,可以方便地擴展其功能,滿足不同業務需求。
2.2 ?Spring Boot技術
Spring框架是十分強大的,但是其缺點也是不能忽視的,Spring框架的配置工作不僅十分瑣碎而且在配置過程中很容易產生各種異常,同時對小項目的開發極不友好,在一個極其小的項目中也要進行大量的配置,這些缺點都是導致其開發效率不高的問題。2014年,基于Spring的全新架構由Pivotal團隊研發面世,命名為Spring Boot框架。Spring Boot不僅繼承了Spring的優勢,同時起到簡化開發過程的作用,極大的提高了開發效率,Spring Boot的目標不是解決問題,而是避免XML的配置[12],故而受到廣泛的歡迎和應用。
2.3 ?Mybatis技術
MyBatis是一款基于Java的持久層框架,它支持了一種提供了優秀的SQL映射功能,可以幫助Java程序開發者輕松地將對象模型與關系型數據庫之間進行交互。將SQL語句和Java代碼進行分離是Mybatis的核心思想,通過XML文件或注解來定義SQL語句,然后使用Java對象來映射查詢結果。這種方式使得開發人員可以很方便地編寫和維護SQL語句,同時也降低了系統的耦合度。MyBatis還提供了一些常用的注解和API,可以幫助開發者快速構建復雜的數據庫操作。使用MyBatis可以避免手動編寫JDBC代碼和手動設置參數以及獲取結果集,從而提高了開發效率[13]。它有非常多的優點:提供了多種配置方式和擴展機制,開發者可以根據項目需要進行靈活的配置和擴展、將SQL語句和Java代碼進行分離,使得SQL語句易于維護和升級,同時也方便了開發人員之間的協作和交流、提供了多種性能優化手段,如緩存、預編譯等,可以有效提高系統的性能。
Mybatis-Plus是一個開源的MyBatis增強工具庫,它簡化了MyBatis的操作,提供了諸多實用的特性和功能,達到提高效率的目的。Mybatis-Plus具有以下優點:
(1)簡化CRUD操作:Mybatis-Plus提供了一組簡單易用的CRUD方法,可以快速完成數據庫操作,避免了手寫SQL語句的繁瑣過程。
(2)支持多種主鍵策略:Mybatis-Plus支持非常多的主鍵策略,如自增、UUID等,便于開發者根據業務需求選擇最合適的主鍵生成方式。
(3)易于擴展:Mybatis-Plus提供了非常多擴展點和插件機制,可以輕松便捷地擴展其功能,滿足不同項目的需求。
2.4 ?MySQL數據庫
MySQL是一款流行的開源關系型數據庫管理系統,它采用了客戶機/服務器模式,支持多種操作系統平臺。MySQL之所以被廣泛使用是因為其安裝非常簡單,而且它提供了可視化的管理工具和命令行工具,使得用戶可以輕松地執行各種操作,并且具有快速的查詢和數據訪問能力,支持多種索引和優化技術,保證了系統的高性能同時還具有高可靠性、低成本和開放性等優勢。本系統后臺數據庫采用MySQL,用戶可以通過優化索引和表結構、臨時優化表或者視圖的創建等方法提高數據庫性能[14]。MySQL具有如下優點:
(1)支持標準SQL語言:MySQL能夠支持各種SQL語句的執行。
(2)高性能和穩定性:MySQL能夠處理海量數據且具有出色的性能和穩定性。
(3)可擴展性:MySQL支持插件和存儲引擎,可以根據需要添加新的功能和引擎。
(4)多用戶并發訪問:MySQL支持多用戶并發訪問,可滿足高并發場景的需求。
(5)安全性:MySQL提供了許多安全選項,如訪問控制、數據加密等。
(6)可視化工具支持:MySQL提供可視化的管理工具,方便管理員進行數據庫的管理和維護。
2.5 ?本章小結
本章介紹了本文研究所需要的主要技術。介紹了系統所用的前端技術Vue.js,其次介紹了所用的后端技術Mybatis和Spring Boot以及MySQL數據庫技術,為后期項目開發提供理論和技術可行性基礎。