初識Spring Boot
概述
簡單的介紹了Spring Boot的特性以及如何搭建一個Spring Boot項目。
什麽是Spring Boot
隨著動態語言的流行,Java的開發顯得格外的笨重:繁多的配置、地下的開發效率、復雜的部署流程以及第三方技術繼承難度大。
在上面的環境下,Spring Boot應運而生。它使用“習慣優於配置”(項目中存在大量的配置,此外還內置一個習慣性的配置,讓你無須手動進行配置)的理念讓你的項目快速運行起來。使用Spring Boot很容易創建一個獨立運行(運行jar,內嵌Servlet容器)、準生產級別的基於Spring框架的項目,使用Spring Boot你可以不用護著只需要很少的Spring配置。
Spring Boot核心功能
1:獨立運行的Spring項目
Spring Boot可以以jar包的形式獨立運行,運行一個Spring Boot項目只需通過java -jar xx.jar來運行。
2:內嵌Servlet容器
Spring Boot可選擇內嵌Tomcat、Jetty或者Undertow,這樣我們無須以war包形式部署項目。
3:提供starter簡化Maven配置
Spring提供了一系列的starter pom來簡化Maven的以來加載。
4:自動配置Spring
Spring Boot會根據在類路徑中的jar包、類,為jar包裏的類自動配置Bean,這樣會極大的減少我們要使用的配置。
5:準生產的應用監控
Spring Boot提供基於http、ssh、telnet對運行時的項目進行監控。
6:無代碼生成和xml配置
Spring Boot不是借助於代碼生成來實現的,而實通過條件註解來實現的,這是Spring4.x提供的新特性。
Spring4.x提倡使用Java配置和註解配置組合,而Spring Boot不需要任何xml配置即可實現Spring的所有配置。
Spring Boot的優點
1:快速構建項目。
2:對主流開發框架的無配置集成。
3:項目可獨立運行,無須外部依賴Servlet容器。
4:提供運行時的應用監控。
5:極大的提高了開發、部署效率。
6:與雲計算的天然集成。
使用IDEA創建一個Spring Boot項目
1:新建Spring Initializr項目
2:填寫項目信息和選擇技術
創建完成
Spring Boot CLI
Spring Boot CLI時Spring Boot提供的控制臺命令工具。
下載地址:http://repo.spring.io/release/org/springframework/boot/spring-boot-cli/(可下載不同版本)。
下載完成後解壓並配置環境變量。配置過程和配置jdk差不多,此處不再贅述。
創建項目:
在控制臺輸入命令:spring init --build=maven --java-version=1.8 --dependencies=web --packaging=jar --boot-version=1.3.0.M1 --groupId=con.gaof --artifactId=demo
然後會生成一個壓縮包,就是一個Spring Boot項目。壓縮包放置路徑時控制臺的當前路徑。
手工創建Spring Boot項目
其實上面的兩種方式包括其他創建Spring Boot項目的方式都僅僅是創建了一個Maven項目,只不過添加了Spring Boot的依賴而已。
我們可以用任意開發工具創建空的Maven項目,添加Spring Boot依賴使之成為一個Spring Boot項目。
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 6 <groupId>com.example</groupId> 7 <artifactId>demo</artifactId> 8 <version>0.0.1-SNAPSHOT</version> 9 <packaging>jar</packaging> 10 11 <name>demo</name> 12 <description>Demo project for Spring Boot</description> 13 14 <parent> 15 <groupId>org.springframework.boot</groupId> 16 <artifactId>spring-boot-starter-parent</artifactId> 17 <version>2.0.1.RELEASE</version> 18 <relativePath/> <!-- lookup parent from repository --> 19 </parent> 20 21 <properties> 22 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> 23 <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> 24 <java.version>1.8</java.version> 25 </properties> 26 27 <dependencies> 28 <dependency> 29 <groupId>org.springframework.boot</groupId> 30 <artifactId>spring-boot-starter-web</artifactId> 31 </dependency> 32 33 <dependency> 34 <groupId>org.springframework.boot</groupId> 35 <artifactId>spring-boot-starter-test</artifactId> 36 <scope>test</scope> 37 </dependency> 38 </dependencies> 39 40 <build> 41 <plugins> 42 <plugin> 43 <groupId>org.springframework.boot</groupId> 44 <artifactId>spring-boot-maven-plugin</artifactId> 45 </plugin> 46 </plugins> 47 </build> 48 49 50 </project>pom.xml
一個簡單的小例子
知道如何創建Spring Boot項目後,不妨現在就創建一個,看看效果。
創建完成後,在入口類中添加index方法,然後運行訪問一下。
1 package com.example.demo; 2 3 import org.springframework.boot.SpringApplication; 4 import org.springframework.boot.autoconfigure.SpringBootApplication; 5 import org.springframework.web.bind.annotation.RequestMapping; 6 import org.springframework.web.bind.annotation.RestController; 7 8 /** 9 * @RestController: 10 * 使此類成為控制器,可以被路徑訪問到。 11 * @SpringBootApplication: 12 * Spring Boot項目的核心註解,主要目的是開啟自動配置。 13 */ 14 @RestController 15 @SpringBootApplication 16 public class DemoApplication { 17 /** 18 * 主要作用是作為項目啟動的入口 19 * @param args 20 */ 21 public static void main(String[] args) { 22 SpringApplication.run(DemoApplication.class, args); 23 } 24 25 @RequestMapping("/") 26 String index() { 27 return "Hello Spring Boot"; 28 } 29 }Demo
初識Spring Boot