1월 16일 개발일지
2024. 1. 16. 20:41ㆍ스파르타/개발일지
그동안 미뤄왔던 ToDo 앱 만들기 과제를 할 차례이다.
implementation("org.springdoc:springdoc-openapi-starter-webmvc-ui:2.2.0")
먼저 build.gradle.kts 파일에 들어가서 dependencies 항목 맨 아랫 줄을 추가해줬다.
실행 완료 후 실행 완료 후 http://localhost:8080/swagger-ui/index.html 에 들어가서 확인을 해주었다
작성한 API 가 없어서 No operations defined in spec! 라는 문구가 떴다.
그리고 OpenAPI definition으로 된 이름을 바꿔주었다.
그러기 위해서는 직접 bean을 등록해준다.
등록을 할 때는 @Configuration 과 @Bean을 활용한다.
등록을 위해서 먼저 package 설정을 해주었다.
infra라는 패키지를 먼저 생성하고, 이후 infra 패키지 하위에 swagger package를 생성해준다.
Swagger Package 코드
(공식문서 참고 https://springdoc.org/#how-can-i-set-a-global-header)
package com.example.todo.infra.swagger
import io.swagger.v3.oas.models.Components
import io.swagger.v3.oas.models.OpenAPI
import io.swagger.v3.oas.models.info.Info
import org.springframework.context.annotation.Bean
import org.springframework.context.annotation.Configuration
@Configuration
class SwaggerConfig {
@Bean
fun openAPI(): OpenAPI = OpenAPI()
.components(Components())
.info(
Info()
.title("ToDo API")
.description("ToDo API schema")
.version("1.0.0")
)
}
title, description, version을 바꿔주었다.
재실행해서 브라우저 상에서 바뀐 화면이 뜨면 성공이다!
이제 controller를 통해 api를 작성하면 자동으로 문서화가 될 것이다.
Controller 와 DTO 작성
'스파르타 > 개발일지' 카테고리의 다른 글
1월 29일 개발일지 (0) | 2024.01.29 |
---|---|
1월 17일 개발일지 (0) | 2024.01.17 |
1월 15일 개발일지 (0) | 2024.01.15 |
1월 12일 개발일지 (0) | 2024.01.12 |
1월 11일 개발일지 (3) | 2024.01.11 |