автоматическая генерация ответа swagger для стороннего класса

#java #swagger #springfox

#java #swagger #springfox

Вопрос:

Я использую springfox для автоматической генерации документа swagger-api из моего приложения spring-mvc restful. Чтобы сделать API понятным, я использую @ApiModelProperty для добавления поля описания для ответа. Недавно появился API, который отвечает на стороннюю модель, которую я не могу добавить @ApiModelProperty к ее источнику. Итак, как добавить @ApiModelProperty для сторонней модели, которой вы не управляете?

Ответ №1:

У вас есть несколько вариантов.

Во-первых, модель ответа не обязательно должна быть конкретным классом, который вы возвращаете. Так что это может быть UserDTO , но вы можете легко объявить это как User . Это дает вам возможность создать интерфейс или даже расширить свой конкретный класс и добавить @ApiModelProperty аннотации.

Далее, большинство фреймворков позволяют перехватывать документ Swagger до его рендеринга. Вероятно, вы можете вручную изменить документ и добавить описания и метаданные, которые вам нужны.

Я бы предложил использовать первый подход, поскольку его проще реализовать и он дает вам весь необходимый контроль.