springboot +jpa + security 部落格系統
寫在最前面
有興趣的同學可以把原始碼蕩下來,然後部署war包至自己的伺服器,如何打包,繫結域名等一系列操作檢視本人近期部落格,記錄了遇到的問題,如果您有問題,歡迎留言。
引言
確實,找了好久,沒有找到一個優雅的java部落格系統。自己去寫一個吧,想著開源的php的優秀部落格那麼多,何必浪費時間去弄,況且自己寫的問題多,考慮得不全面,與此等等,自己把自己唬住了。恰巧的是四月初一天,在開源中國的搜尋框中搜了下部落格,出現了tale。點開一看,介面清爽,佈局優美,精神為之一振。最好的一點就是作者本人將它開源了,方便學習。這個時候在我的腦海中出現了執行力這個詞,不如就讓行動去決定思想,來克服懶惰,讓我也去實現一次。
框架的選擇
看了原作者對技術架構的說明,在此我也放棄了去弄ssm ssh之類臃腫的架構。首先,學藝不精;其次,框架整合各有千秋,吸收框架去做一個CRUD也不是一天的事情。對於spring boot火不火的事情,管他呢,既然我也是初學者,那就幹。至少懂springmvc的流程,就立馬能知道專案是怎麼執行的。所以我選擇了springboot.看了作者的陳述,說是沒有加上許可權這一塊,正好三月份研究了spring security4半月有餘。目前架構就是springboot+springsecurity+jpa(?哦對了,還有orm層,為了簡便就用jpa了)。至於頁面渲染,作者用的jetbrick-template已經很棒了。鑑於上面三者都是新接觸的知識,為了新上加新,選擇了模板引擎thymeleaf。開發工具就用idea。上面所述,新建專案可以一併整合,省事。
專案說明
作者的專案看著挺簡單的,做起來卻不是那麼一回事了。好多細節的處理讓我感覺到和作者之間的差距巨大。於是,讓自己的能力和專案對等,就簡化了很多功能。也便於大家一起學習吧,畢竟我也是新手。現在專案整體的執行和原作者的基本一致。
1.開發的功能:
- 使用者管理:只面向個人使用者,不提供對使用者的CRUD,可以擴充套件。
- 角色管理:安全框架必須,使用者角色關聯對應,可以進行擴充套件。
- 文章釋出:釋出博文。
- 友鏈管理:對網站掛載友情連結的管理。
- 分類、標籤管理:主要是給文章釋出提供便捷。
- 附件管理:使用七牛雲對文章中要用到的圖片檔案統一進行管理。
由於選擇的框架不同,對於原作者提供的一些功能暫時沒有實現,一切從簡,主要面對初學者。具體的我去掉的功能:評論這一塊,系統設定中的站點設定,清除快取,匯出sql,配置外掛,擴充套件主題模板。其餘基本一致,可打包為jar war等多種形式直接執行。
2.專案框架
- 主框架:spring boot 1.5.2+ spring security4+jpa
- 快取:ehcache
- 後臺管理模板:H-UI admin
- 前臺主題模板:pingshu
- 資料庫:mysql
- 模板引擎:thymeleaf
- 圖片儲存:七牛
前端框架在此不做說明,基本都用的差不多。
這裡我感覺做的最有意義的事就是整合springboot 和security,擴充套件了JPA資料庫訪問,以及展示瞭如何通過七牛實現的雲端儲存。
3.快速開始
碼雲地址:https://git.oschina.net/oneper/base/tree/dev/
開發工具:idea。
從碼雲匯入專案至idea,修改resources檔案下application.yml中mysql的配置資訊,然後直接執行DemoApplication.java的main()方法。
然後瀏覽器訪問:http://localhost:8080/
後臺管理地址:http://localhost:8080/login
登入後會跳至首頁。
需再訪問http://localhost:8080/admin/index
4.專案執行之後的美圖
主頁:
詳情頁
後臺主頁:
友鏈
附件:
標籤: