티스토리 뷰
Maven depencdency (1.6.9, 22 May released)
<!-- https://mvnrepository.com/artifact/org.springdoc/springdoc-openapi-ui -->
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>1.6.9</version>
</dependency>
기본 설정 (class를 만들어서 환경설정 해줘도 되고 properties에 추가해서 설정해줘도 됨. 여기서는 properties 활용.)
springdoc:
api-docs:
path: /api-docs
swagger-ui:
path: /swagger-ui.html
disable-swagger-default-url: true
display-query-params-without-oauth2: false
paths-to-match: /example/**
# springdoc.packages-to-scan=com.example.package, com.example.another.package
# springdoc.path-to-match=/some/url/**, /another/url/**
paths-to-match나 packages-to-scan 으로 원하는 api 컨트롤러에 대해 swagger scan이 가능하다.
@Tag(name = "컨트롤러명", description = "설명")
@RestController
@RequestMapping("/example)
public class ExampleController {
@Operation(summary = "요약 내용" ,description = "설명")
@RequestMapping(value = "/getData", method = RequestMethod.POST)
public void getEsData(@RequestBody Map<String, Object> infoMap) {
}
}
Swagger 3 annotations | Swagger 2 annotations | Desc |
@Parameter(hidden = true) or @Operation(hidden = true) or @Hidden | @Apilgnore | API 작업에서 단일 매개 변수를 나타냄 |
@Parameter | @ApiImplicitParam | API 작업에서 단일 매개 변수를 나타냄 |
@Parameters | @ApiImplicitParams | API 작업에서 복수 매개 변수를 나타냄 |
@Schema | @ApiModel | Swagger 모델에 대한 추가 정보를 제공 |
@Schema(accesssMode = READ_ONLY) | @ApiModelProperty(hidden = true) | 모델 속성의 데이터를 추가하고 조작 |
@Schema | @ApiModelProperty | Swagger 모델에 대한 추가 정보를 제공 |
@Operation(summary = "foo", description = "bar") | @ApiOperation(value = "foo", notes = "bar") | 특정 경로에 대한 작업 또는 일방적으로 HTTP 메서드를 설명 |
@Parameter | @ApiParam | 작업 매개 변수에 대한 추가 메타 데이터를 추가 |
@ApiResponse(responseCode = "404", description = "foo") | @ApiResponse(code = 404, message = "foo") | 작업의 가능한 응답을 설명 |
서버 실행 후 localhost/swagger-ui.html로 접근
'기타 > swagger' 카테고리의 다른 글
01. swagger2 - spring boot 프로젝트에 적용 (0) | 2022.06.30 |
---|
댓글