大約在2014Martin Fowler提出了Microservices的概念以后在孝,便逐漸流行開(kāi)來(lái)视译,SpringBoot是Spring推出的又一力作院水,因其簡(jiǎn)單易上手的特點(diǎn),迅速的發(fā)展屋摔,成為微服務(wù)開(kāi)發(fā)中的主流框架之一烁设。本篇文章作為SpringBoot的入門篇。主要講兩個(gè)方面:如何構(gòu)建一個(gè)SpringBoot項(xiàng)目和如何運(yùn)行一個(gè)SpringBoot項(xiàng)目钓试。
1. 如何構(gòu)建一個(gè)SpringBoot項(xiàng)目
1.1 使用Spring官網(wǎng)提供的方式装黑,在線生成一個(gè)SpringBoot項(xiàng)目
- 訪問(wèn)https://start.spring.io/,如下圖所示弓熏,填寫(xiě)了相關(guān)信息后恋谭,記得最后Dependencies搜索web,最后點(diǎn)擊Generate the project挽鞠,就會(huì)在本地下載到一個(gè)SpringBoot項(xiàng)目
1.2 使用 IntelliJ IDEA的插件生成一個(gè)SpringBoot項(xiàng)目
1.2.1 使用社區(qū)版插件Spring Assitant或?qū)I(yè)版插件Spring Initializr疚颊,點(diǎn)擊File->New->project
,如下圖所示
1.2.2 點(diǎn)擊Next信认,如下圖所示材义,填寫(xiě)必要的信息后,繼續(xù)下一步
1.2.3 Dependencies選擇Spring Web Starter嫁赏,如下圖
1.2.4 點(diǎn)擊Finish其掂,就會(huì)在指定路徑下生成一個(gè)SpringBoot項(xiàng)目
1.2.5 在IDEA中生成的項(xiàng)目層級(jí)結(jié)構(gòu)如下圖所示
1.3 使用Maven Archetype插件生成一個(gè)Maven項(xiàng)目,然后修改為一個(gè)SpringBoot項(xiàng)目潦蝇,該方式適合無(wú)圖形化界面且無(wú)法使用以上兩種方式直接生成SpringBoot項(xiàng)目的情況款熬。
前提深寥,請(qǐng)確保本地安裝了Maven,我本地Maven版本如下:
1.3.1 使用命令行執(zhí)行如下命令
mvn archetype:generate -DgroupId=com.lingfeng -DartifactId=spring-boot-demo -Dversion=0.0.1-SNAPSHOT -DinteractiveMode=false -Dpackage=com.lingfeng.spring.boot
- 其中archetype:generate表示使用maven-archetype-plugin插件執(zhí)行的目標(biāo)是generate
- -D所帶的參數(shù)表示設(shè)置生成的項(xiàng)目的相關(guān)參數(shù)
- -DinteractiveMode=false表示不開(kāi)啟交互界面贤牛,使用默認(rèn)方式
1.3.2 如下圖的執(zhí)行結(jié)果翩迈,我們可以看到在base dir下已經(jīng)成功生成了對(duì)應(yīng)的Maven項(xiàng)目
開(kāi)始將Maven項(xiàng)目改造成SpringBoot項(xiàng)目
1.3.3 給pom.xml添加Spring Boot Web依賴
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<version>2.1.5.RELEASE</version>
</dependency>
1.3.4 給Maven項(xiàng)目中的App.java添加SpringBoot注解,并修改主類盔夜,如下圖
1.3.5 在pom.xml添加Spring Boot Maven插件引導(dǎo)Spring Boot應(yīng)用,官網(wǎng)中說(shuō)道是該插件聲明在spring-boot-starter-parent POM文件中堤魁,所以在pom.xml加入如下聲明喂链,否則會(huì)無(wú)法啟動(dòng)
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.5.RELEASE</version>
</parent>
1.3.6 在pom.xml所在目錄下,命令行執(zhí)行如下命令妥泉,有如下圖所示日志表示該SpringBoot項(xiàng)目啟動(dòng)成功
mvn spring-boot:run
2. 如何啟動(dòng)一個(gè)SpringBoot項(xiàng)目
2.1 命令行模式
默認(rèn)當(dāng)前環(huán)境已經(jīng)安裝了Maven,使用Maven命令啟動(dòng)SpringBoot椭微,效果如1.3.6節(jié)圖所示
mvn spring-boot:run
2.2 使用IntelliJ IDEA啟動(dòng)SpringBoot
2.3 使用JDK自帶的命令執(zhí)行Jar包
前文中使用Maven Archetype插件生成的項(xiàng)目改造成SpringBoot項(xiàng)目后,要打包成可執(zhí)行的jar需要添加spring-boot-maven-plugin來(lái)引導(dǎo)Main-Class
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
2.3.1 在項(xiàng)目的pom.xml目錄下使用Maven命令將項(xiàng)目打包成jar包
mvn clean package
2.3.2 在項(xiàng)目的target目錄下找到打好的jar包盲链,使用如下命令啟動(dòng)spring-boot蝇率,確保本地已安裝JDK,如下圖所示刽沾,表示啟動(dòng)成功
jar -jar spring-boot-demo-0.0.1-SNAPSHOT.jar
參考資料
- 小馬哥《SpringBoot編程思想》