一、入門知識
1.Spring Boot 簡介
簡化Spring應用開發的一個框架;
整合Spring技術棧的一個大整合;
J2EE開發的一站式解決方案;
官網 https://spring.io/projects
2.微服務
https://martinfowler.com/microservices/ 詳細對微服務作出瞭解釋
2014, 通過 martin fowler 的介紹,微服務纔開始慢慢火起來。
微服務:架構風格
一個應用應該是一組小型服務:可以通過HTTP來進行通信
單體應用:ALL IN ONE,如下圖
微服務,每個功能元素最終都是一個可獨立替換的獨立升級的軟件單元:如下圖
3.構建大型的分佈式應用
- Spring Cloud 將 Spring Boot 創建的微服務進行網狀互聯互調
- 分佈式之間的流式計算,批處理由 Spring Cloud Data Flow 實現
二、開始前的準備工作
1.環境約束
- JDK1.8 : Spring Boot 要求 1.7+
- maven3.x : 3.3+
- idea2018
- SpringBoot 2.2.2.RELEASE
2.Maven設置
給maven的setting.xml配置文件的profiles標籤添加
<profile>
<id>jdk-1.8</id>
<activation>
<activeByDefault>true</activeByDefault>
<jdk>1.8</jdk>
</activation>
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>
</properties>
</profile>
3.IDEA配置maven
百度上很多就不贅述了
三、Spring Boot HelloWorld(手動搭建)
1.功能
瀏覽器發送hello請求,服務器接受請求並處理,響應Hello World字符串
2.創建一個maven工程(jar)
一直下一步然後finish就行了
3.導入依賴spring boot相關的依賴
官網 https://spring.io/projects/spring-boot
複製pom文件,groupId和artifactId需要自行修改。
4.編寫一個主程序,啓動SpringBoot應用
/**
* @SpringBootApplication 來標註一個主程序類,說明這是一個springboot應用
*/
@SpringBootApplication
public class HelloWorldMainApplication {
public static void main(String[] args) {
//Spring應用啓動
SpringApplication.run(HelloWorldMainApplication.class, args);
}
}
5.編寫相關的Controller、Service
@Controller
public class HelloController {
@ResponseBody
@RequestMapping("/hello")
public String hello(){
return "Hello World!";
}
}
5.運行程序
不同於其他的web程序,需要配置tomcat,spring boot 直接運行主程序就行了。
在部署的時候也只需要利用maven的pakage打包成jar就可以了,相關的tomcat包spring boot項目都包含在內了
四、通過嚮導快速創建SpringBoot應用
需要聯網
選中的這些沒用可以刪掉
通過嚮導生成的項目目錄如下
- 主程序已經生成好了
- resources文件中目錄結構
- static:保存靜態資源:js css images 等
- templates:保存所有的模板頁面(SpringBoot默認jar包使用嵌入式的Tomcat,默認不支持jsp頁面)可以使用模板引擎(freemarker、thymeleaf);
- application.properties:SpringBoot 的配置文件;可以修改一些默認設置,如端口號,server.port=8081