1. 开发第一个SpringBoot应用
- 环境要求:
Java 1.8 + mvn3.3.9 - 创建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>
- 创建 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);
}
}
- 运行
mvn spring-boot:run
浏览器输入localhost:8080
hello world
- 注意点
@RestController注解
@RestController注解:这是一个 stereotype 注解。它提示阅读代码的人以及Spring,
当前列类扮演了一个特殊的角色。在这个案例中我们的类是个 web @Controller
所以当处理进来的web请求时候Spring将考虑这个类。
@RequestMapping注解
@RequestMapping注解:提供路由信息。他告诉Spring任何含有路径“/” 的HTTP 请求应该和
home 方法进行匹配。@RequestMapping注解告诉Spring 讲返回的字符串直接反馈给调用者。
@EnableAutoConfiguration 注解
@EnableAutoConfiguration注解:这个注解告诉Spring根据添加的依赖jar去“猜想”你将如何去配置
Spring。因为Spring-boot-starter-web 添加了Tomcat 和 Spring MVC,自动配置将假设你正在开发
一个web应用和相应的Spring配置。
end