概述
系列:
【個人博客設計】
【個人博客設計】框架與插件篇
【個人博客設計】開發工具篇
後端:Maven
+Springboot
+springsecurity
+mybatis
+jpa
+redis
+druid
+lombok
+pagehelper
前端:editor.md
+amazeui
+thymeleaf
+uni-app
+colorui
1、後端框架
1.1、Maven
Maven項目對象模型(POM),可以通過一小段描述信息來管理項目的構建,報告和文檔的項目管理工具軟件。Maven 除了以程序構建能力爲特色之外,還提供高級項目管理工具。由於 Maven 的缺省構建規則有較高的可重用性,所以常常用兩三行 Maven 構建腳本就可以構建簡單的項目。由於 Maven 的面向項目的方法,許多 Apache Jakarta 項目發文時使用 Maven,而且公司項目採用 Maven 的比例在持續增長。--------百度詞條
總的來說,maven是 Apache 下的一個純 Java 開發的開源項目,更是是一個管理工具,用於管理我們的項目,可以對我們所寫的 Java 項目進行構建、依賴管理。在一個java項目尤其是springboot項目使用maven可以大大提高我們的開發效率。
1.2、springboot
說起springboot就要從spring的框架說起了,Spring框架是由於軟件開發的複雜性而創建的。Spring使用的是基本的JavaBean來完成以前只可能由EJB完成的事情。然而,Spring的用途不僅僅限於服務器端的開發。從簡單性、可測試性和松耦合性角度而言,絕大部分Java應用都可以從Spring中受益。
spring:
◆目的:解決企業應用開發的複雜性
◆功能:使用基本的JavaBean代替EJB,並提供了更多的企業應用功能
◆範圍:任何Java應用
而springboot
,它的目標是簡化了spring
應用和服務的創建,開發與部署,簡化了配置文件,使用嵌入式的web服務器,含有諸多開箱即用的微服務功能,可以和spring cloud
聯合部署。
spring boot
的核心思想是約定大於配置,應用只需要很少的配置即可,簡化了應用開發模式,用過springboot
的都知道,springboot
絕大多數都是自動配置的,而我們要做的就是配置其中的某一個小部分,就可以實現我們需要實現的功能了。
1.3、springsecurity
在項目中,我們難免會用到安全組件,而對於spring與springboot項目來說,springsecurity是一個非常不錯的選擇。
Spring Security
,這是一種基於 Spring AOP
和 Servlet 過濾器的安全框架。它提供全面的安全性解決方案,同時在 Web 請求級和方法調用級處理身份確認和授權。本教程對 Spring Security 的使用進行一個比較全面的簡要介紹。
spring security
的核心功能主要包括:認證 、授權 、攻擊防護
如果你需要用到以上就去使用springsecurity吧。
值得注意的是,在前端使用
thymeleaf
引擎模板的時候我們可以使用thymeleaf-extras-springsecurity5
來進行前端的顯示。
1.4、mybatis
MyBatis 本是apache的一個開源項目iBatis, 2010年這個項目由apache software foundation 遷移到了google code,並且改名爲MyBatis 。2013年11月遷移到Github。------百度詞條
MyBatis 是一款優秀的基於Java的持久層框架,它支持定製化 SQL、存儲過程以及高級映射。MyBatis 避免了幾乎所有的 JDBC 代碼和手動設置參數以及獲取結果集。MyBatis 可以使用簡單的 XML 或註解來配置和映射原生類型、接口和 Java 的 POJO(Plain Old Java Objects,普通老式 Java 對象)爲數據庫中的記錄。
1.5、jpa
JPA與mybatis一樣都是java的持久化框架。相比於mybatis來說,jpa有自己的數據庫操作方法,所以sql語句不需要自己寫。當然一些複雜的查詢還是需要自己來寫的。
1.6、redis
Redis 是一個開源(BSD許可)的,內存中的數據結構存儲系統,它可以用作數據庫、緩存和消息中間件。一般來說我們經常用redis來作爲緩存,而其他的功能並不是經常用。
REmote DIctionary Server(Redis) 是一個由Salvatore Sanfilippo寫的key-value存儲系統。
Redis是一個開源的使用ANSI C語言編寫、遵守BSD協議、支持網絡、可基於內存亦可持久化的日誌型、Key-Value數據庫,並提供多種語言的API。
它通常被稱爲數據結構服務器,因爲值(value)可以是 字符串(String), 哈希(Hash), 列表(list), 集合(sets) 和 有序集合(sorted sets)等類型。
2、前端框架
2.1、editor.md與towxml
editor.md是國內開源的一款在線Markdown編輯器,可嵌入的 Markdown 在線編輯器(組件),基於 CodeMirror、jQuery 和 Marked 構建。
在這個項目裏,我用它來作爲MD與html的轉換。
2.2、amazeui與colorui
Amaze UI 是一個輕量級(所有 CSS 和 JS gzip 後 100 kB 左右)、 Mobile first 的前端框架, 基於開源社區流行前端框架編寫(使用、參考的項目列表)。
Amaze是pc端使用的主要ui。
小程序端使用的是colorui
2.3、thymeleaf
Thymeleaf是一個現代的服務器端Java模板引擎的web和獨立的環境。
Thymeleaf的主要目標是爲您的開發工作流程帶來優雅的自然模板- HTML,可以正確地顯示在瀏覽器,也可以作爲靜態原型,允許在開發團隊更強大的協作。
一句話描述:thymeleaf;語法簡單,功能強大。
2.4、uni-app
uni-app 是一個使用 Vue.js 開發所有前端應用的框架,開發者編寫一套代碼,可發佈到iOS、Android、H5、以及各種小程序(微信/支付寶/百度/頭條/QQ/釘釘)等多個平臺。