初始化

首先下载springboot 项目工程模板: https://start.spring.io
image.png

第一个应用

引入依赖

初始化项目,我们引入依赖,

  1. <dependency>
  2. <groupId>org.springframework.boot</groupId>
  3. <artifactId>spring-boot-starter-web</artifactId>
  4. </dependency>

启动文件

然后在项目根目录下面可以看到启动文件

  1. package com.example.demo01;
  2. import org.springframework.boot.SpringApplication;
  3. import org.springframework.boot.autoconfigure.SpringBootApplication;
  4. @SpringBootApplication
  5. public class Demo01Application {
  6. public static void main(String[] args) {
  7. SpringApplication.run(Demo01Application.class, args);
  8. }
  9. }

@SpringBootApplication 注解是一个复合性的注解,它包含了三个注解的意思

  1. @SpringBootConfiguration: 声明这个类为配置类,尽管没有太多的配置,但是你可以往这里添加 spring 的配置
  2. @EnableAutoConfiguration : 启动自动配置,这个注解会自动帮你配置一些它所认为你需要的一些配置,比如说JdbcTemplates, DataSource 等等
  3. @ComponentScan: 组件扫描,扫描一些上面有 @Service, @Component , @Controller,@RestController的类,并将其实例化为组件。这样就无需你自己再去实例化。

    controller

    新建一个 package,叫做 controller, 然后在 controller 下面新建一个文件 HomeController.java
    1. @RestController
    2. @RequestMapping("/api/v1")
    3. public class HomeController {
    4. @GetMapping("/index")
    5. public Map<String,String> Home(){
    6. Map<String,String> home = new HashMap();
    7. home.put("Message","Hello Spring Boot");
    8. return home;
    9. }
    10. }
    @RestController 声明这个路由控制为 API 类型
    @RequestMapping 声明了一部分路径
    @GetMapping 声明这是一个 Get 方法的 API
    最后我们返回一个 Map 类型的 response,最后被 spring 中的 Jackson-databind 依赖序列化为 JSON 类型返回到用户的客户端。

image.png

这样我们第一个API 应用就完成了。