Spring boot многоразовые аннотации параметра springdo c -openapi - PullRequest
0 голосов
/ 13 марта 2020

У меня есть несколько классов контроллеров, для всех которых требуется параметр заголовка. Чтобы задокументировать чванство, я добавляю эту аннотацию @Parameter ко всем моим конечным точкам:

    @Parameter(in = ParameterIn.HEADER, description = "some description", name = "some name", content = @Content(schema = @Schema(allowableValues = {VALUE1, VALUE2, VALUE3, VALUE4})))
    @GetMapping
    public void method(@RequestHeader .....) {
    //some code here
    }

Проблема в том, что мне не нравится идея повторять одну и ту же аннотацию во всех методах контроллера. Есть ли хорошее чистое решение для повторного использования аннотации здесь?

1 Ответ

0 голосов
/ 18 марта 2020

Таким образом, частичное исправление - это создание моего собственного пользовательского интерфейса следующим образом:

@Target({PARAMETER, METHOD, FIELD, ANNOTATION_TYPE})
@Retention(RetentionPolicy.RUNTIME)
@Inherited
@Parameter(in = ParameterIn.HEADER, description = "some description", name = "some name", content = @Content(schema = @Schema(allowableValues = {VALUE1, VALUE2, VALUE3, VALUE4})))
public @interface MyCustomAnnotation {
}

, чтобы я мог использовать это повторно и сохранить некоторый код. Проблема в том, что некоторые значения отличаются. Например, если allowableValues ​​различаются между конечными точками, я не могу использовать эту повторно. Я не могу понять, как я могу передать некоторые аргументы в мою пользовательскую аннотацию, чтобы переопределить значения по умолчанию ...

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