SpringBoot之從零搭建網站(可提供源碼)

在這裏插入圖片描述
前言
爲什麼想要搭建這個工作室?
我還記得,在大學的時候,我們往常一樣的在學習過着大學生活,同往常一樣的解決這某個bug,不停地問度娘,很巧的碰到了一個同行在他的博客中完美的記錄了搭建網站的過程,隨後我又看了看他寫的其他博客文章,覺得都非常的不錯,並且同時也被他博客網站的簡約清新吸引,也就在那刻,心中埋下了準備自己網站種子…

於是在那之後的時候我就開始了Bootstrap了的學習,然後好像也並沒有什麼卵用,因爲還是不會用~~~

就這樣一直拖了大概有3個月,某天我才意識到我好像有件很重要的事沒完成,就是這麼的突然,毫無準備的就開始了網站的搭建。

自己在本子上設計了網站的所有頁面的大致樣式(也借鑑了許多大佬的網站樣式,哈哈,我承認我審美不是很好),列出了應該有的功能,當時看來並不算多,也給自己定了一個目標期限,在7月5日之前上線,不錯有了目標也就有了動力,就這麼開始幹了。

一件事情在開頭總是想的很美好,然而事實總會跟你對着幹。在網站搭建的過程中遇到了無數多的前端頁面設計bug,我在此之前也可以算的上是個前端小小白,很是無奈,不過還是要在這裏感謝其他工作室裏幫我解決了許多bug的波波、田小宇和楊小卿,沒有你們估計我的網站還得推遲半年才能上線吧,O(∩_∩)O哈哈~

不過現在網站還只是個雛形 ,還有繼續開發中。。。。

文章概述

  • 關於項目,對於學習Springboot是個挺不錯的練手項目,可以讓你在煩惱的業務邏輯中保持一顆純潔的心
  • 如何從零開始,使用Springboot開發項目
  • 開發前的一些準備工作,以及思考項目整體結構與思路
  • 記錄開發過程中遇到的一些難題以及bug
  • 總結目前工作室網站的一些優缺點
  • 思考整個項目有哪些可以優化的地方,以及有哪些可增加的功能

項目需求

項目背景

對於Springboot的朋友來說,最好的一個學習方式就是那一個功能俱全的項目來練練手,通過自己重構項目來發現其中的潛在難題,並且也能很好的在編碼過程中總結和發現問題、解決問題。使用Springboot開發的網站,簡單並且實用,適合做練手項目。

功能需求

首頁輪播圖以及頁面主體風格

在這裏插入圖片描述

服務內容

在這裏插入圖片描述

技術領域

在這裏插入圖片描述

頂尖團隊

在這裏插入圖片描述

軟件開發服務精選

在這裏插入圖片描述

價格定製

在這裏插入圖片描述

聯繫我們

在這裏插入圖片描述

安裝部署需求

  • 可以使用docker方式部署,也可支持-jar方式
  • 使用springboot自帶方式打包

非功能需求

性能需求
  • 首頁響應時間不超過2秒鐘
  • 文章頁響應時間不超過3秒鐘

項目設計

總體設計

本項目用到的技術和框架
1.項目構建:Maven
2.web框架:Springboot
3.數據庫ORM:Mybatis
4.數據庫連接池: HikariCP
5.分頁插件:PageHelper
6.數據庫:MySql
7.緩存:Redis

本項目中的關鍵點

1.採用Springboot開發,數據庫使用連接池加orm框架的模式,對於系統的關鍵業務使用Redis緩存,加快相應速度。
2.整體系統採用門戶網站+後臺管理方式搭建,門戶網站信息內容以及工作室介紹,後臺管理用於價格定製、網站內容編輯,查看反饋,管理評論留言。
3.使用阿里雲OSS進行靜態資源存儲,以及CDN全站加速。

環境

工具 名稱
開發工具 IDEA
語言 JDK1.8 、html、css、js
項目架構 SSM
ORM Mybatis
緩存 Redis
項目構建 Maven
運行環境 阿里雲Centos7
請求轉發 nginx

在這裏插入圖片描述

對於熟悉Spring開發的朋友來說,相信對此結構也不會陌生。平時的開發過程中,結構設計是重要的環節,特別是協作開發的時候,明細的分包,模塊化,可減少代碼提交時的衝突。並且明確的結構有助於我們快速的尋找所對應的類。

打包、部署和運行

本項目採用Springboot的maven插件進行打包,打包結果:.jar
部署方式:使用 nohup java -jar ******.jar >
**.log 2>&1 &的方式,後臺啓動項目,並在該路徑下生成運行日誌。
大部分人喜歡打爲war包,利用tomcat啓動。兩種方式都可以。

總結

開發中遇到的難點
  • 要實現在一個頁面進行權限驗證,如果驗證不成功會跳轉到登錄界面,並且登錄成功後還要返回到之前界面,這裏由於對SpringSecurity內部原理的不瞭解,所以我這裏採用的方法是利用請求頭和響應頭存儲url,並在登錄成功後的頁面出跳轉到響應頭中存儲的url處

  • 傳頭像處使用上傳頭像至阿里雲的OSS對象存儲中,由於上傳問題並沒有返回上傳成功後的圖片url地址,於是只好設置OSS的Bucket爲公共讀權限,然後當上傳成功後手動拼接圖片url並存入數據庫
  • 項目中最大的難點還是莫過於頁面css的設計,但是使用了妹子UI後極大的解決了這個問題,只需修改少量css就能實現自己所需要的樣式
項目整體優化
  • 目前項目首頁以及文章頁響應時間過長,後期最好優化到1s響應時間
  • 定時定期進行數據庫的備份,防止出現網站被攻擊後數據丟失的風險
  • 手機端瀏覽文章頁面會出現代碼自動換行問題,不便於瀏覽過程

以上就是我在博客網站搭建過程後的所有總結記錄,可能會有遺缺部分,等以後想起來了再來修改吧。

其他福利

微信掃下方二維碼關注公衆號,經常分享一些技術上的理解文章。歡迎騷擾,還可以回覆想要的管理系統或者畢業設計,分享各種系統源碼(僅限Java語言哦,如需定製系統加qq:226186862)
在這裏插入圖片描述

本人秉持開源原則,待後期網站功能完善之後會同步源碼至Github、碼雲中。需要搭建網站的朋友歡迎使用使用,只要給我個star就好啦,哈哈。如果搭建過程中有各種問題歡迎來騷。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章