개발 팁/스프링

spring에 swagger 적용하는 방법(spring version 3.0 이상)

SeoburiFaust 2024. 1. 5. 22:20

 

build.gradle에 다음 라이브러리를 추가한다.

implementation 'org.springdoc:springdoc-openapi-starter-webmvc-ui:2.2.0'

 

그리고 

 

http://localhost:8080/swagger-ui/index.html 에 들어가면 다음과 같은 창이 뜬다.

 

 

근데 api가 뜨지 않는 문제가 발생했다. 분명 나는 TestController를 만들어 놨는데 뭐가 문제일까....

......

 

알고보니 @Controller가 아니라 @RestController라고 적어야 했다. 아래와 같이 수정했다.

근데.. Controller와 RestController의 차이가 뭔가?

찾아보니, Controller는 주로 view를 반환하기 위해 사용하는 전통적인 방법이고,

RestController는 ResponseBody가 Controller에 추가된 형태로, Json형태로 객체 데이터를 반환한다고 한다. 최근에 많이 사용되며, 이것이 트렌디한 방법이다. 

 

앞으로 RestController만 사용한다고 생각해도 될 거 같다.

 

 

수정 후 test controller가 화면에 등장하는 것을 확인할 수 있었다.

 

야호!