Spring Boot 學習筆記(一)--- Spring簡介及Spring Boot快速搭建

不久前在學習Spring Cloud的相關知識,原本準備基于Spring Cloud來搭建自己的網站的,但最近工作實在有點繁忙,看書斷斷續續的,書包里的kindle強行撐了兩個多禮拜沒關機,現在對于之前看的東西已經忘了不少,因此現在把做的筆記以及編寫的demo都記錄下來,以便分享給他人(其實我知道沒人看)以及自己后續翻看復習。

Spring簡介

在說Spring Boot之前大家應該都聽說過Spring。

Spring框架是一個輕量級的企業級開發的一站式解決方案。

所謂解決方案就是可以基于Spring解決JavaEE開發的所有問題。Spring框架主要提供了IoC容器、AOP、數據訪問、Web開發、消息、測試等相關技術的支持。
Spring使用簡單的POJO(Plain Old Java Object)來進行企業級開發。每一個被Spring管理的Java對象都稱之為Bean;而Spring提供了一個IoC容器來初始化對象,解決對象之間的依賴管理和對象的使用。

Spring目前提供了大量的基于Spring的項目,如我本文要講述的SpringBoot以及基于Spring Boot而產生的Spring Cloud:

  • Spring Boot:使用默認開發配置來實現快速開發;
  • Spring Cloud:為分布式系統開發提供工具集;

Spring框架本身又四大原則:

  • 使用POJO進行輕量級和最小侵入式開發;
  • 通過依賴注入和基于接口變成實現松耦合;
  • 通過AOP和默認習慣進行聲明式編程;
  • 使用AOP和模板(template)減少模式化代碼;
    Spring所有功能的設計和實現都是基于此四大原則的。

Spring Boot概述

相對于我們傳統常用的SpringMVC的一大堆繁瑣的xml配置,Spring Boot的“習慣優于配置”理念使得我們很容易創建一個獨立運行的,準生產級別的基于Spring框架項目。其核心功能包括以下幾點:

  • 獨立運行的Spring項目:可以通過jar包形式運行,即java -jar xx.jar;
  • 內嵌servlet容器,無需以war包形式部署項目;
  • 提供starter簡化Maven配置:Spring提供了一系列的starter pom簡化maven的依賴加載,后文創建Spring Boot項目會看出來;
  • 自動配置Spring:Spring Boot會根據在類路徑中的jar包、類,為jar包中的類自動配置Bean,這樣會極大的減少我們使用的配置。
  • 準生產的應用監控;
  • 無代碼生產和xml配置:Spring Boot的神奇不是借助代碼生成實現的,而是通過條件注解來實現。這是Spring4.x的新特性,在這,Spring4.x提倡使用Java配置和注解配置組合,Spring Boot不需要任何xml配置額即可實現Spring所有配置。

Spring Boot快速搭建

本人使用的開發工具是IDEA,創建Spring Boot項目也比較方便,也推薦大家使用此工具,顏值高,開發體驗也很好。
1新建Spring Initializr項目


image

2.填寫項目信息,選擇項目使用技術,我們這里選擇Web就可以了,填好項目名稱,finish。


image

image

image

至此,項目搭建結束,其項目依賴如圖:


image

同時我們可以看到,在我們groupId+artifactId組合包名下有個入口類:
image

我們啟動該類中的main方法,這里即是啟動本項目:
image

控制臺打印輸出啟動成功,我們為了能看到頁面效果,給該類加上@RestController注解,并添加index方法:


image

再次啟動項目,訪問localhost:8080 如圖所示
image

通過查看源碼可以發現,我們這里的*Application的入口類上的注解@SpringBootApplication注解實際上是組合了@Configuration、@EnableAutoConfiguration、@ComponentScan這幾個注解,若不適用@SpringBootApplication,也可使用這三個注解代替。其中@EnableAutoConfiguration讓Spring Boot根據類路徑中的jar包依賴為當前項目進行自動配置。
Spring Boot會自動掃描@SpringBootApplication所在類的同級包,因此建議入口類防止在groupId+artifactId組合包名下。
這里也順便講個有意思的東西,我們啟動Spring Boot的時候是有個默認啟動圖案的,其實這個是可以換的,我們在src/main/resources下新建一個banner.txt,然后去http://patorjk.com/software/taag 網站生成字符,然后將字符復制到banner.txt中,我寫的是LEAFW,再次啟動如圖:

image

以上,即為Spring Boot學習第一章節,也是最最最最為基礎的東西,后續會更新進一步的學習筆記。

本博客中所有相關代碼已上傳至本人GitHub的leafw-blog-demo項目下,如有需要可下載查看。本文對應的為springboot_1目錄。

本文參考書籍:博文視點-Spring Boot實戰

?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容