springboot學習筆記
阿新 • • 發佈:2020-10-25
1.什麼是Spring Boot
Spring Team在現有Spring框架的基礎上釋出了一個創新的主要框架:Spring Boot。這是一個來自Pivotal Team(Spring Team)的全新專案。Spring Boot是他們最新的創新,能夠跟上不斷變化的技術需求。 開發Spring Boot的主要動機是簡化配置和部署spring應用程式的過程。
Spring Boot為開發提供一個具有最小功能的Spring應用程式,並提供了一個新的範例。使用Spring Boot將能夠以更靈活的方式開發Spring應用程式,並且能夠通過最小(或可能沒有)配置Spring來專注於解決應用程式的功能需求。它使用全新的開發模型,通過避免一些繁瑣的開發步驟和樣板程式碼和配置,使Java開發非常容易。
Spring Boot可以輕鬆建立單獨的,生產級的基於Spring的應用程式,我們只管“執行”。檢視Spring平臺和第三方庫。大多數Spring Boot應用程式只需要很少的Spring配置。
2.Spring Boot的主要特點
- 建立獨立的Spring應用程式
- 直接嵌入Tomcat,Jetty或Undertow(無需部署WAR檔案)
- 提供“初始”的POM檔案內容,以簡化Maven配置
- 儘可能時自動配置Spring
- 提供生產就緒的功能,如指標,健康檢查和外部化配置
- 絕對無程式碼生成,也不需要XML配置
3.Spring Boot的優點和缺點
- 使用Java或Groovy開發基於Spring的應用程式非常容易。
- 它減少了大量的開發時間並提高了生產力。
- 它避免了編寫大量的樣板程式碼,註釋和XML配置。
- Spring Boot應用程式與其Spring生態系統(如Spring JDBC,Spring ORM,Spring Data,Spring Security等)整合非常容易。
- 它遵循“自用預設配置”方法,以減少開發工作量。
- 它提供嵌入式HTTP伺服器,如Tomcat,Jetty等,以開發和測試Web應用程式非常容易。
- 它提供CLI(命令列介面)工具從命令提示符,非常容易和快速地開發和測試Spring Boot(Java或Groovy)應用程式。
- 它提供了許多外掛來開發和測試Spring啟動應用程式非常容易使用構建工具,如Maven和Gradle。
- 它提供了許多外掛,以便與嵌入式和記憶體資料庫工作非常容易。
4.開發一個Springboot程式
(1)新建maven專案,建立pom
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.example</groupId> <artifactId>myproject</artifactId> <version>0.0.1-SNAPSHOT</version> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.0.0.RELEASE</version> </parent> <!-- Additional lines to be added here... --> </project>
(2)新增類路徑依賴
<dependency> <dependency> <groupId> org.springframework.boot </ groupId> <artifactId> spring-boot-starter-web </ artifactId> </ dependency> </ dependencies>
(3)在src/main/java目錄下新建example.java主程式
import org.springframework.boot.*; import org.springframework.boot.autoconfigure.*; import org.springframework.web.bind.annotation.*; @RestController @EnableAutoConfiguration public class Example { @RequestMapping("/") String home() { return "Hello World!"; } public static void main(String[] args) throws Exception { SpringApplication.run(Example.class, args); } }
(4)執行示例,mvn spring-boot:run
. ____ _ __ _ _ /\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \ ( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \ \\/ ___)| |_)| | | | | || (_| | ) ) ) ) ' |____| .__|_| |_|_| |_\__, | / / / / =========|_|==============|___/=/_/_/_/ :: Spring Boot :: (v2.0.0.RELEASE) ....... . . . ....... . . . (log output here) ....... . . . ........ Started Example in 2.222 seconds (JVM running for 6.514)
開啟web瀏覽器localhost:8080地址,即可看到helloworld