1. 開(kāi)發(fā)第一個(gè)SpringBoot應(yīng)用
- 環(huán)境要求:
Java 1.8 + mvn3.3.9 - 創(chuàng)建Maven 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>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.BUILD-SNAPSHOT</version>
</parent>
<!--添加典型的web依賴-->
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
<!-- (you don't need this if you are using a .RELEASE version) -->
<repositories>
<repository>
<id>spring-snapshots</id>
<url>http://repo.spring.io/snapshot</url>
<snapshots><enabled>true</enabled></snapshots>
</repository>
<repository>
<id>spring-milestones</id>
<url>http://repo.spring.io/milestone</url>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>spring-snapshots</id>
<url>http://repo.spring.io/snapshot</url>
</pluginRepository>
<pluginRepository>
<id>spring-milestones</id>
<url>http://repo.spring.io/milestone</url>
</pluginRepository>
</pluginRepositories>
</project>
- 創(chuàng)建 Java src/main/java/com/Example.java
import org.springframework.boot.*;
import org.springframework.boot.autoconfigure.*;
import org.springframework.stereotype.*;
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);
}
}
- 運(yùn)行
mvn spring-boot:run
瀏覽器輸入localhost:8080
hello world
- 注意點(diǎn)
@RestController注解
@RestController注解:這是一個(gè) stereotype 注解薄嫡。它提示閱讀代碼的人以及Spring胳泉,
當(dāng)前列類扮演了一個(gè)特殊的角色。在這個(gè)案例中我們的類是個(gè) web @Controller
所以當(dāng)處理進(jìn)來(lái)的web請(qǐng)求時(shí)候Spring將考慮這個(gè)類们何。
@RequestMapping注解
@RequestMapping注解:提供路由信息萄焦。他告訴Spring任何含有路徑“/” 的HTTP 請(qǐng)求應(yīng)該和
home 方法進(jìn)行匹配。@RequestMapping注解告訴Spring 講返回的字符串直接反饋給調(diào)用者冤竹。
@EnableAutoConfiguration 注解
@EnableAutoConfiguration注解:這個(gè)注解告訴Spring根據(jù)添加的依賴jar去“猜想”你將如何去配置
Spring拂封。因?yàn)镾pring-boot-starter-web 添加了Tomcat 和 Spring MVC,自動(dòng)配置將假設(shè)你正在開(kāi)發(fā)
一個(gè)web應(yīng)用和相應(yīng)的Spring配置鹦蠕。
end