天天看點

SpringBoot 2.1.7 搭建Servlet Web&Reactive Web項目SpringBoot 搭建Web項目

SpringBoot 搭建Web項目

使用SpringBoot建立Web項目的兩種姿勢:

  • 1.Spring Initializr --> 生成

    Spring Framework + Spring Servlet Web

    傳統 MVC Web項目
  • 2.使用IDE插件 --> 生成

    Spring Framework + Spring Reactive Web

    響應式Web項目(WebFlux)

環境資訊:

OS:Win10

Jdk:JavaSE 8

Ide:Idea

Spring Boot:2.1.7.RELEASE

1.使用Spring Initializr

SpringBoot + Spring Servlet Web項目

打開位址 --> https://start.spring.io/

  1. 1

    處填寫項目資訊(圖一)
  2. 2

    處選擇需要的依賴(圖二)
  3. 點選

    3

    預覽你的項目資訊(圖三)
  4. 點選

    4

    生成并下載下傳項目代碼(圖四)

圖一

:Spring Initializr頁面

SpringBoot 2.1.7 搭建Servlet Web&Reactive Web項目SpringBoot 搭建Web項目

圖二

:選擇需要的項目依賴

SpringBoot 2.1.7 搭建Servlet Web&Reactive Web項目SpringBoot 搭建Web項目

圖三

:預覽生成的項目資訊

SpringBoot 2.1.7 搭建Servlet Web&Reactive Web項目SpringBoot 搭建Web項目

圖四

:點選

Generate the project

進行下載下傳

SpringBoot 2.1.7 搭建Servlet Web&Reactive Web項目SpringBoot 搭建Web項目
  • 4.将下載下傳的工程導入IDE

建立個

controller

@RestController
public class StudentController {

    @GetMapping("/names/{name}")
    public String getName(@PathVariable String name)
    {
        return Objects.isNull(name)?"":"Even";
    }
}
           

通過

Gradle

啟動工程:

SpringBoot 2.1.7 搭建Servlet Web&Reactive Web項目SpringBoot 搭建Web項目

使用

Postman

調用:

SpringBoot 2.1.7 搭建Servlet Web&Reactive Web項目SpringBoot 搭建Web項目

2.使用 Idea

Spring Framework + Spring Reactive Web 響應式Web項目 (WebFlux)

Idea內建了Spring Initializr,建立過程同1;

  • 1.建立新項目
    SpringBoot 2.1.7 搭建Servlet Web&Reactive Web項目SpringBoot 搭建Web項目
  • 2.選擇Spring Initializr
SpringBoot 2.1.7 搭建Servlet Web&Reactive Web項目SpringBoot 搭建Web項目
  • 2.填寫基本資訊
SpringBoot 2.1.7 搭建Servlet Web&Reactive Web項目SpringBoot 搭建Web項目
  • 3.選擇需要的工具

    Web選 -->

    Spring Reactive Web

SpringBoot 2.1.7 搭建Servlet Web&Reactive Web項目SpringBoot 搭建Web項目
  • 4.确認完成,并建立Router和Handler

Router:

@Configuration
public class StudentRouter {
    private final static String BASE_PATH = "/names";

    @Bean
    public RouterFunction<ServerResponse> userRoutersFunctionMock(StudentHandler studentHandler) {
        RouterFunction<ServerResponse> serverResponse = route()
                .GET(BASE_PATH + "/{name}", accept(APPLICATION_JSON), studentHandler::findStudentByName)
                .build();
        return serverResponse;
    }
}
           

Handler:

@Component
public class StudentHandler {

    public Mono<ServerResponse> findStudentByName(ServerRequest serverRequest)
    {
        return ServerResponse.ok().body(Mono.just("Even"),String.class);
    }

}
           
SpringBoot 2.1.7 搭建Servlet Web&amp;Reactive Web項目SpringBoot 搭建Web項目
  • 5.配置好服務端口,啟動服務并使用Postman進行請求
SpringBoot 2.1.7 搭建Servlet Web&amp;Reactive Web項目SpringBoot 搭建Web項目

繼續閱讀