Как отсортировать схемы в Swagger-ui SpringDoc open ui

Я хочу отсортировать свои Schemas сгенерирован для моих классов Entity, классов DTO в Springdoc ui.
Я могу отсортироватьtags а также operations конфигурацией ниже в yml файл, но мои схемы не отсортированы.

springdoc:
  swagger-ui:
    disable-swagger-default-url: true
    tags-sorter: alpha
    operations-sorter: alpha
    doc-expansion: none

Как я мог отсортировать свои схемы.
Спасибо.

1 ответ

Решение

Вы можете полностью контролировать порядок схем с помощью OpenApiCustomiser. Это образец кода, который вы можете настроить с помощью компараторов в зависимости от желаемой логики сортировки:

@Bean
public OpenApiCustomiser sortSchemasAlphabetically() {
    return openApi -> {
        Map<String, Schema> schemas = openApi.getComponents().getSchemas();
        openApi.getComponents().setSchemas(new TreeMap<>(schemas));
    };
}

Если вас интересует сортировка на swagger-ui, а не на стороне сервера, вы можете зарегистрировать запрос функции в проекте swagger-ui.

Другие вопросы по тегам