[개발] Swagger

Swagger

  • REST API 개발시 문서를 자동으로 만들어주는 프레임워크

    (REST API : 자원을 이름으로 구분하여 해당 자원의 상태(정보)를 주고 받는 것이며 HTTP URI를 통해 자원을 명시하고, HTTP Method를 통해 해당 자원에 대한 CRUD를 적용하는 것을 의미함.)

  • 많은 API관리를 통해 정확한 협업과 소통이 가능하다!

Swagger 어노테이션

@RestController
@Api(value = "BoardController V2")
@RequestMapping("/v1/api")
public class BoardControllerV1 {

    @ApiOperation(value = "exam", notes = "예제입니다.")
    @ApiResponses({
            @ApiResponse(code = 200, message = "OK !!"),
            @ApiResponse(code = 500, message = "Internal Server Error !!"),
            @ApiResponse(code = 404, message = "Not Found !!")
    })
    @GetMapping(value = "/board")
    public Map<String, String> selectOneBoard(@ApiParam(value = "게시판번호", required = true, example = "1") @RequestParam String no) {
        Map<String, String> result = new HashMap<>();
        result.put("author", "victolee");
        result.put("content", "V1 API 내용");
        return result;
    }
}

참고

https://github.com/swagger-api/swagger-core/wiki/Swagger-2.X—Annotations#apiresponse

https://victorydntmd.tistory.com/341