들어가기
처음으로 스웨거라는 라이브러리를 적용해보았다.
스웨거는 API를 자동으로 문서화 해주는 기능으로, 사용자가 직접 test 까지 해볼 수 있는 장점이 있다.
스웨거? Rest Apu를 문서화 혹은 빌드 등을 위해 사용하는 OpenAPI 사양을 중심으로 구축된 오픈 소스 도구 세트
API Documentation & Design Tools for Teams | Swagger
swagger.io
기존에 진행했던 프로젝트들에선 postman과 직접 노가다?를 통해 API 명세서를 작성했었는데, 이를 사용함으로서 더욱 깔끔하고 편하게 작업을 진행할 수 있었다. 이로서 생산성을 높일수 있는 장점이 있었다.
스웨거 적용해보기
먼저 첫번째로 라이브러리를 추가해야한다
(나 같은 경우엔 gradle)이라서 아래와 같이 추가했다.
implementation group: 'io.springfox', name: 'springfox-swagger2', version: '2.8.0'
implementation group: 'io.springfox', name: 'springfox-swagger-ui', version: '2.8.0'
그 다음 Swagger를 사용하기 위해서 설정이 필요하다.
이러한 방식으로 설정을 끝마치고, 애플리케이션을 실행시켜, localhost:[port]/swagger-ui.html 로 접속해보면 된다.
만약 스프링 시큐리티를 적용했다면
private static final String[] PERMIT_URL_ARRAY = {
/* swagger v2 */
"/v2/api-docs",
"/swagger-resources",
"/swagger-resources/**",
"/configuration/ui",
"/configuration/security",
"/swagger-ui.html",
"/webjars/**",
/* swagger v3 */
"/v3/api-docs/**",
"/swagger-ui/**"
};
다음과 같은 설정들이 필요하다.
추가적으로 Swagger 문서를 꾸밀 수 있으니까 검색하며 자신에게 필요한 기능들을 찾아서 쓰는 것이 좋다.
'TIL(Today I Learned)' 카테고리의 다른 글
Day.47 오랜만의 TIL과 회고 (1) | 2023.02.14 |
---|---|
Day.46 Query dsl (0) | 2023.01.31 |
Day.44 @DynamicInsert, @DynamicUpdate, 데이터 조회 (0) | 2023.01.19 |
Day.43 피드백 (0) | 2023.01.17 |
Day.42 JPA 데이터 삭제 이슈 + 그 속에서 발생한 오류 (0) | 2023.01.15 |