공부메모 & 오류해결/유틸

[Spring Boot + Swagger] Swagger 적용하기 [SpringBoot 3.x.x 버전]

남건욱 2023. 12. 21. 11:59
반응형

1. Swagger

API를 설계, 빌드, 문서화하고 테스트하는 데 사용되는 강력한 프레임워크. 주로 RESTful 웹 서비스의 API를 문서화하는 데 사용되며, 다양한 언어와 플랫폼 간의 통합을 용이하게 만들어 준다.

 

1.1 Swagger 주요 기능

- API 문서화

- API 시각화

- 테스트 기능

- 다양한 포멧 지원

 

 

2. 사용 버젼

- Spring Boot 3.1.3

- SpringDoc-OpenApi v2.1.0

 

 

3. 프로젝트에 Swagger 적용하기

 

3.1 의존성 추가

    // swagger
    implementation group: 'org.springdoc', name: 'springdoc-openapi-starter-webmvc-ui', version: '2.1.0'

build.gradle에 의존성을 추가

 

3.2 Config 작성

@Configuration
public class SwaggerConfig {
    @Bean
    public GroupedOpenApi publicApi() { //경로 설정, 여러개 만들 수 있음
        return GroupedOpenApi.builder()
                .group("myApp")
                .pathsToMatch("/**")
                .build();
    }

    @Bean
    public OpenAPI MyOpenApi() {
        return new OpenAPI()
                .info(new Info().title("SongGPT")
                        .description("JPEOPLE 프로젝트의 API 명세서입니다.")
                        .version("v2.1.0")
                        .license(new License().name("Apache 2.0").url("http://springdoc.org")));
    }
}

 

 

4. 실행해보기

http://주소:포트/swagger-ui/index.html

서버를 실행시킨 뒤 본인의 주소와 포트를 입력하고 들어가면 된다.

 

이런 식으로 api들을 확인할 수 있다.

 

 

 

 

테스트도 가능하다.

 

 

 

5. 오류 발생 시

.requestMatchers("/swagger*/**", "/v3/api-docs/**").permitAll()

403 에러가 뜬다면 SecurityFilterChain 설정 부분에 위 코드를 붙여주면 된다.

 

반응형
프로필사진

남건욱's 공부기록