Spring Boot 2.0.0.RELEASE 需要 Java 8 or 9 and Spring Framework 5.0.4.RELEASE 或者更高版本. 支援Maven 3.2+和Gradle 4 版本
支援的Servlet容器
Tomcat 8.5、Jetty 9.4、Jetty 9.4
官方版本遷移wiki
https://github.com/spring-projects/spring-boot/wikiHelloWorld異同項目分析
1. 修改 pom.xml
<?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>springboot-mybatis</groupId>
<artifactId>springboot-mybatis</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>
<name>springboot-mybatis</name>
<description>Demo project for Spring Boot</description>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.0.RELEASE</version>
</parent>
<!-- Add typical dependencies for a web application -->
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
<version>5.0.4.RELEASE</version>
</dependency>
</dependencies>
<!-- Package as an executable jar -->
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
2. 修改啟動類
package springbootmybatis.springbootmybatis;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
@EnableAutoConfiguration
public class MybatisApplication {
public static void main(String[] args) {
SpringApplication.run(MybatisApplication.class, args);
}
@RequestMapping("/")
String home() {
return "Hello World!";
}
}
![](https://img.laitimes.com/img/_0nNw4CM6IyYiwiM6ICdiwiIn5GcuUGO5YDOkZGNkRTNkZ2N5UWO0UjMiRGNhFzY0MTZ1ITZfdWbp9CXt92Yu4GZjlGbh5SZslmZxl3Lc9CX6MHc0RHaiojIsJye.png)
運作結果
代碼中三個注解分析
兩個MVC注解:
- @RestController 是Spring處理web請求時用到的注解。告訴Spring将結果字元串直接呈現給調用者。
- @RequestMapping 提供了“路由”資訊,将
請求映射給home()方法。/
SpringBoot注解:
- @EnableAutoConfiguration 這個注解告訴Springboot 根據你添加的jar包來猜測配置Spring 。@SpringBootApplication一樣,也可以使用exclude屬性來禁用不需要自動配置的應用。例子:
那麼,它和@SpringBootApplication注解有什麼關系呢?@EnableAutoConfiguration(exclude = {DataSourceAutoConfiguration.class})
我們來看下@SpringBootApplication注解源碼
是以,@SpringBootApplication注釋是相當于使用@Configuration, @EnableAutoConfiguration以及@ComponentScan與他們的預設屬性。
通俗的講:@SpringBootApplication = @Configuration+@EnableAutoConfiguration+@ComponentScan 。前提是預設配置,當然,如果你想要覆寫預設配置,你就需要重寫該注解了,重寫也很簡單,給注解加上參數就好。