1、SpringBoot簡介java
1.1 什麼是SpringBootweb
說到spring系列,可能你們都很熟悉,spring、springmvc,美之名曰:spring全家桶,那麼springboot其實也是全家桶裏邊的,boot有引導,引擎的意思,springboot其實就能夠看做是一個引導驅動同樣,爲了可以讓咱們順利的建立spring應用而引進的一個框架,它能夠作到讓咱們零配置的去啓動一個應用,springboot其實也是一組jar包,引入這些jar以後,而後就能夠幫你自動構建項目而且發佈、運行項目。
spring
其實springboot只是爲了默認配置了不少東西,它內部幫咱們管理整合了不少開發框架的使用方式,試想咱們以前開發一個spring應用,要在xml中配置不少東西,啓動部署時,還要有tomcat環境,還有什麼日誌配置的,反正都是各類配置,這種配置幾乎都是前篇一概,繁瑣不堪,咱們就急需把這些配置省略掉,由於都是固定模式的東西,springboot就這樣來了,簡化了甚至能夠說去除了咱們全部的配置,(其實內部本身用約定大於配置的方式幫咱們配置了),真正的一鍵搭建,一鍵運行,可能你用了springboot以後,就再也見不到xml文件了。apache
稍微總結一下:tomcat
springboot是一組jar包,咱們稱它爲springboot框架,它大大簡化了咱們開發spring應用的過程。springboot
2、SpringBoot上手使用服務器
前邊咱們已經說到,springboot其實就是一組jar包,spring-boot-*.jar,因此咱們徹底能夠像使用傳統jar包那樣使用springboot,springboot不依賴任何建立工具,甚至只需一個記事本就能夠開發咱們的程序,不過springboot的jar包,依賴就有不少了,這樣的話咱們一個一個引入也是不行的,因此這裏咱們要使用maven工具來幫助咱們管理包的依賴,其它的就不須要了。mvc
檢查maven環境和jdk環境,這兩點就不說了,基本是開發必須的:app
2.1 建立項目結構框架
根據本身習慣建立一個目錄,個人目錄以下,目前是空目錄:
這裏我先用VSCode來編輯項目中的一些文件,用VSCode打開這個目錄,並添加一個名稱爲pom.xml的文件,複製以下內容:
1 <?xml version="1.0" encoding="UTF-8"?> 2 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 3 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 4 <modelVersion>4.0.0</modelVersion> 5 <groupId>com.springbootstudy</groupId> 6 <artifactId>springboot-helloworld</artifactId> 7 <version>0.0.1-SNAPSHOT</version> 8 <parent> 9 <groupId>org.springframework.boot</groupId> 10 <artifactId>spring-boot-starter-parent</artifactId> 11 <version>1.4.0.RELEASE</version> 12 </parent> 13 </project>
其中關鍵代碼,來引入springboot的jar包,這是springboot啓動所須要的最基本的jar包,若是用idea工具的話,能夠點進去看到依賴不少的jar包。
1 <parent> 2 <groupId>org.springframework.boot</groupId> 3 <artifactId>spring-boot-starter-parent</artifactId> 4 <version>1.4.0.RELEASE</version> 5 </parent>
2.2 執行mvn命令
在當前springboot-helloworld命令下執行mvn package 命令,maven會根據pom.xml中的配置去解析下載還原包,到此爲止,springboot所須要的基礎包及其依賴已經還原好了,其實這一步能夠再咱們寫完代碼以後作,這裏只是看一下maven的效果,說明沒什麼問題。
2.3 添加web啓動器
到目前爲止,咱們尚未說明springboot要構建的是什麼樣的一個項目,這裏咱們添加一個web啓動器,也就是 spring-boot-starter-web 包,說明了咱們是要構建一個web應用。
1 <dependencies> 2 <dependency> 3 <groupId>org.springframework.boot</groupId> 4 <artifactId>spring-boot-starter-web</artifactId> 5 </dependency> 6 </dependencies>
其實這個包夜依賴了不少包,好比:spring-webmvc、spring-web、tomcat什麼的, 只是咱們這裏看不到,這種依賴也是springboot提早爲咱們構建好的。如今pom.xml的結構以下:
2.4 編寫代碼
maven默認有約定,源代碼須要在src/main/java下,因此咱們須要手動創建這樣一個目錄,而後添加一個HelloWorld.java的文件。
1 import org.springframework.boot.*; 2 import org.springframework.boot.autoconfigure.*; 3 import org.springframework.stereotype.*; 4 import org.springframework.web.bind.annotation.*; 5 @RestController 6 @EnableAutoConfiguration 7 public class HelloWorld { 8 @RequestMapping("/") 9 String home() { 10 return "Hello World!"; 11 } 12 public static void main(String[] args) throws Exception { 13 SpringApplication.run(HelloWorld.class, args); 14 } 15 }
在springboot-helloworld目錄下打開cmd,運行 mvn spring-boot:run,來啓動咱們的web應用,啓動成功,會有springboot的banner輸出:
訪問http://localhost:8080,出現Hello World,到如今爲止,就這幾個步驟咱們就啓動了咱們的web應用,沒有出現tomcat,沒有出現部署,接下來咱們繼續寫咱們的業務邏輯代碼就能夠了。
2.5 打包部署
畢竟最後咱們仍是要在生產環境上運行咱們的web應用,這樣啓動可不行,咱們須要安裝打包插件,插件會自動把咱們項目打包成一個可執行的jar包,那麼咱們經過java -jar直接執行就能夠了,也不用在服務器上安裝tomcat什麼的。
安裝插件,在pom.xml中添加插件依賴:
<build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build>
執行 mvn package 命令打包,在target目錄裏邊會出現一個springboot-helloworld-0.0.1-SNAPSHOT.jar的文件
咱們注意到這個文件很大,難不成我寫一個helloworld就這麼大,其實裏邊有不少依賴包,都打在一塊兒了,這樣咱們只要拿着這個一個包到哪裏都能運行咱們的web項目,服務器能夠不裝tomcat就能啓動,咱們也能夠猜到裏邊確定內置了tomcat,固然須要安裝java運行環境。(廢話...)
咱們用360壓縮打開,能夠看到裏邊咱們熟悉的包依賴:
接着咱們把上邊那個jar直接複製到桌面上改一個名字,而後直接運行命令 java -jar springboot-helloworld.jar
輸出以下,而後訪問http://localhost:8080/,出現Hello World的輸出,以前同樣。
3、總結
以上就是springboot的最原始的搭建方式,看起來很是的簡單,咱們基本上沒有什麼配置文件,能夠說是零配置,咱們直接寫的代碼,固然springboot這樣的框架也是入門容易精通難,由於裏邊的東西還有不少不少,接下來的東西咱們之後繼續學習,總結springboot帶給咱們了一種飛通常的開發體驗,因此咱們就立刻要起飛了。