Рубрики
Без рубрики

openapi-процессор-весна

openapi-processor-spring (или сокращенно: aop-spring) – это открытый интерфейс API и модель генерации кода Java… Помечен как open api, spring boot, java.

openapi-processor-spring (или сокращенно: aop-spring ) – это Открытый API интерфейс и генератор Java-кода модели для Spring Boot .

Он генерирует код для контроллеров на основе аннотаций (MVC) (oap-spring имеет экспериментальную поддержку Mono<> и Flux<> подобные обертки, позволяющие использовать веб-поток с аннотациями).

Его цель – обеспечить плавное и простое сопоставление описания yaml открытого API с кодом Java Spring Boot:

  • разрешение общих шаблонов кода загрузки Spring, таких как передача дополнительных параметров (например Запрос HttpServletRequest или обработчикметодаргументрезультат ) к конечным точкам контроллера без добавления его в описание открытого API

  • обеспечение простого сопоставления с существующими типами Java с (простой) универсальной поддержкой

  • уход с дороги, если процессор не создает ожидаемый код для отдельных конечных точек.

Вам понадобится проект spring boot на основе gradle и плагин oap-gradle для использования aop-spring.

Смотрите краткий обзор ниже, чтобы узнать, как это работает, или перейдите по следующим ссылкам:

Текущие выпуски вехи 1.0 являются:

  • com.github.hauner.openapi:openapi-процессор-весна:1.0.0.M14
  • com.github.hauner.openapi:openapi-процессор-уровень:1.0.0.M7

обзор использования

Вот краткий обзор использования. Более подробное описание доступно в документации .

конфигурация api и процессора

Во-первых, мы помещаем файл open api.yaml с описанием нашего открытого API в папку src/api вашего проекта. Мы помещаем еще один файл yaml сопоставление.yaml в одно и то же место. Это конфигурация процессора.

/src/api/
   openapi.yaml
   mapping.yaml

минимальное содержание отображения .yaml – это имя целевого пакета для кода, генерируемого процессором. Он создаст два подпакета api и модель для интерфейсов конечных точек и классов моделей.

options:
  package-name: com.github.hauner.openapi

конфигурация градиента

Чтобы включить процессор, мы добавляем следующие фрагменты в build.gradle :

  • добавьте плагин oap-gradle
plugins {
    id 'com.github.hauner.openapi-processor' version '1.0.0.M7'
}
  • далее идет настройка плагина для oap-spring. Апипат , отображение & targetDir настройте пути к входным файлам и файл конфигурации процессора. процессор похож на зависимость в стандартном gradle зависимости блокирует и сообщает плагину, какой процессор использовать. Плагин создаст задачу process Spring для запуска данного процессора .
openapiProcessor {
    apiPath "${projectDir}/src/api/openapi.yaml"

    spring {
        processor 'com.github.hauner.openapi:openapi-processor-spring:1.0.0.M14'
        mapping "${projectDir}/src/api/mapping.yaml"
        targetDir "${projectDir}/build/openapi"
    }

}
  • последний шаг – включить сгенерированные файлы в сборку. При стандартных конфигурациях gradle мы добавляем targetDir в исходный набор java , чтобы gradle их скомпилировал. Чтобы автоматически регенерировать api при необходимости, мы добавляем задачу process Spring в качестве зависимости к задаче compileJava .
sourceSets {
    main {
        java {
            srcDir "${projectDir}/build/openapi"
        }
    }
}

compileJava.dependsOn ('processSpring')

Теперь, когда мы изменим openapi.yaml или отображение.yaml gradle автоматически запускает процессор для обновления кода api перед компиляцией остальной части нашего кода.

Это оно.

Оригинал: “https://dev.to/hauner/openapi-processor-spring-368k”