본문 바로가기
Language/Java

[Webflux](보류)Java기반 Spring webflux 시작하기 - RestController 방식

by 카프리썬 2022. 2. 1.
728x90

사실 나의 목표는 Intellj에서 gradle로 Kotiln기반 Spring webflux 프로젝트를 시작하는 것이다.

그런데 일단 코틀린기반으로 Webflux프로젝트를 진행한 사례를 찾기 쉽지 않았다.

그래서 우선 java기반으로 hello world를 먼저 찍어보고, 이걸 먼저 이해한다음에 kotiln으로 도전해봐야겠다..

 

그런데, 그 전에 java기반 코드를 작성할 수 있는 방법은 3가지가 있는것 같다.. (각 차이점은 사실 잘 모르겠다)

우선 이번 글에선 RestController기반 방식으로 구현된 예제만 기록해보려고한다. 

dependecy 적용하고 새로운 프로젝트를 구성하는 환경설정은 이전에 글을 참고하고, 바로 코드작성부터 진행해본다.

 

 

728x90

spring webflux의 프로그래밍 모델로 2가지 패턴이 제공된다

  • @Controller
  • router functions : handler방식

@RestController 선언

아예 그냥 메인 Java Main Application 클래스 위에 @RestController를 선언한다. 

그리고 org.springframework.web.bind.annotation.RestController도 import 해줘야한다. 

그리고 그냥 간단하게 /hello라는 요청이 여기로 들어오면 "Hello Webflux!" 를 리턴한다는 hello() 함수를 작성한다. 

이 클래스는 아예 webfluxJavaApplication같은 메인같은 클래스가 되서 바로 이 자체를 run한다.

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
import reactor.core.publisher.Flux;

@RestController
@SpringBootApplication
public class HelloController {
    @GetMapping("/hello")
    public String hello() { return "Hello WebFlux!!!"; }

    public static void main(String[] args) { SpringApplication.run(HelloController.class, args); }
}

 

 

참고

http://www.devkuma.com/pages/1514

 

프로그램 개발 지식 공유, devkuma

데브쿠마는 프로그래밍 개발에 대한 지식을 공유합니다.

www.devkuma.com

 

반응형