728x90
728x90
사실 나의 목표는 Intellj에서 gradle로 Kotiln기반 Spring webflux 프로젝트를 시작하는 것이다.
그런데 일단 코틀린기반으로 Webflux프로젝트를 진행한 사례를 찾기 쉽지 않았다.
그래서 우선 java기반으로 hello world를 먼저 찍어보고, 이걸 먼저 이해한다음에 kotiln으로 도전해봐야겠다..
그런데, 그 전에 java기반 코드를 작성할 수 있는 방법은 3가지가 있는것 같다.. (각 차이점은 사실 잘 모르겠다)
- Handler기반 방식 : https://pearlluck.tistory.com/714
- RestController 방식 : 현재글
- Reactor 방식
우선 이번 글에선 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
728x90
반응형
'🍃 Language > Java' 카테고리의 다른 글
[Webflux]💙Mono와 Flux > Reactor > Reactive Streams 이해 (0) | 2022.02.08 |
---|---|
[Spring][MVC] RedisTemplate으로 Spring과 Redis와 연동하기 (0) | 2022.02.08 |
⚽️MVC와 WebFlux의 차이점, MVC가 '벽에 공 던지기'라면 WebFlux는..? (1) | 2022.02.05 |
[Webflux](보류)Java기반 Spring webflux 시작하기 - Handler방식 (0) | 2022.02.01 |
[Webflux + Kotlin] Intellij에서 gradle로 Kotiln기반 Spring webflux 프로젝트시작하기 (0) | 2022.02.01 |
[WebFlux] 💚 Webflux 그림으로 이해하기(Reactive프로그래밍) (0) | 2022.02.01 |