Spring boot 如何基于自定义注释创建注释/描述以招摇过市

Spring boot 如何基于自定义注释创建注释/描述以招摇过市,spring-boot,swagger,swagger-ui,openapi,springdoc-openapi-ui,Spring Boot,Swagger,Swagger Ui,Openapi,Springdoc Openapi Ui,我有一个Springboot Rest应用程序,其中有自动转换API和参数的注释 我有一个自定义注释,其中包括一些注释,如何在OpenAPI3中生成这些注释到我的招摇过市页面 Ex: @RestController Class Controller { @GetMapping(/test/result/) @CustomAnnotation(value = "This description should come in swagger") void method() {

我有一个Springboot Rest应用程序,其中有自动转换API和参数的注释

我有一个自定义注释,其中包括一些注释,如何在OpenAPI3中生成这些注释到我的招摇过市页面

Ex:
@RestController
Class Controller {

@GetMapping(/test/result/)
@CustomAnnotation(value = "This description should come in swagger")
void method() {
}
}

SpringDoc允许您通过实现自己的定制器bean来定制生成的OpenAPI规范

可用于自定义的自定义程序接口的列表,但最可用的是
操作自定义程序
参数自定义程序
,以及
属性自定义程序

下面是针对您的用例的Operation Customizer示例

@Component
public class OperationCustomizer implements org.springdoc.core.customizers.OperationCustomizer {
    @Override
    public Operation customize(Operation operation, HandlerMethod handlerMethod) {
        CustomAnnotation annotation = handlerMethod.getMethodAnnotation(CustomAnnotation.class);
        if (annotation != null) {
            operation.description(annotation.value());
        }
        return operation;
    }
}
您可以找到使用自定义注释和自定义项的项目示例

基于@NonNull注释修改生成的规范的项目示例