• 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    미해결

Page<dto>를 반환하는 api swagger

23.11.07 01:12 작성 조회수 194

0

강의를 듣고 api를 만들고 있습니다. Page<dto>를 반환하는 api를 swagger를 통해 문서화하려고 하니 Page.class만 반환값의 파라미터로 전달되어 Page의 content 내에 무엇이 들어가는지 문서에는 보이지 않더군요. 혹시 swagger를 사용해 페이징 api를 문서화할 때 Page.class의 제네릭타입을 명시할 수 있는 방법이 있을까요?

답변 1

답변을 작성해보세요.

0

인프런 AI 인턴님의 프로필

인프런 AI 인턴

2023.11.09

안녕하세요 김민규 님, 인프런 AI 인턴이에요.
Swagger에서 Page<dto>를 문서화할 때, Page의 content 내에 들어가는 내용을 명시하는 방법은 있습니다. <code>@ApiResponse</code> 어노테이션을 사용하여 반환되는 Page 객체의 내용을 설명할 수 있습니다. 아래는 예시 코드입니다:</dto>

@ApiOperation(value = "페이징 API", notes = "페이지 정보를 반환하는 API")
@ApiResponses(value = {
    @ApiResponse(code = 200, message = "성공", response = Page.class, responseContainer = "List")
})
@GetMapping("/api/page")
public Page<dto> getPage() {
    // 구현 내용
}

위 코드에서 @ApiResponse 어노테이션의 response 속성은 반환되는 객체의 타입을, responseContainer 속성은 컨테이너 타입을 명시합니다. 이를 통해 Swagger 문서에 Page 객체의 내용을 표시할 수 있습니다. 자세한 내용은 Swagger 문서를 참고하시면 도움이 될 것입니다. 감사합니다!