java110
2022-09-17 854f57c7f9c8bfc6df1c80f4ccec24127f8e3575
支持 注解解析功能
2个文件已修改
32 ■■■■ 已修改文件
java110-doc/src/main/java/com/java110/doc/entity/RequestMappingsDocDto.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
java110-doc/src/main/java/com/java110/doc/registrar/Java110ApiDocDiscoveryRegistrar.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
java110-doc/src/main/java/com/java110/doc/entity/RequestMappingsDocDto.java
@@ -14,6 +14,18 @@
    private String startWay;
    public RequestMappingsDocDto() {
    }
    public RequestMappingsDocDto(String name, String resource, int seq, String url, String startWay) {
        this.name = name;
        this.resource = resource;
        this.seq = seq;
        this.url = url;
        this.startWay = startWay;
    }
    public String getName() {
        return name;
    }
java110-doc/src/main/java/com/java110/doc/registrar/Java110ApiDocDiscoveryRegistrar.java
@@ -12,6 +12,7 @@
import org.springframework.context.ResourceLoaderAware;
import org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider;
import org.springframework.context.annotation.ImportBeanDefinitionRegistrar;
import org.springframework.core.annotation.AnnotationAttributes;
import org.springframework.core.io.ResourceLoader;
import org.springframework.core.type.AnnotationMetadata;
import org.springframework.core.type.filter.AnnotationTypeFilter;
@@ -22,10 +23,7 @@
import java.lang.annotation.Annotation;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.*;
/**
 * api 文档 注入类
@@ -112,15 +110,21 @@
                            .getAnnotationAttributes(
                    Java110RequestMappingsDoc.class.getCanonicalName());
                    attributes.get("mappingsDocs");
                    List<Map<String,Object>> mappingAttrs = (List<Map<String,Object>>)attributes.get("mappingsDocs");
                    List<RequestMappingsDocDto> mappingsDocDtos = new ArrayList<>();
                    RequestMappingsDocDto requestMappingsDocDto = null;
                    for(Map<String,Object> mappingAttr : mappingAttrs){
                        requestMappingsDocDto = new RequestMappingsDocDto(mappingAttr.get("name").toString(),mappingAttr.get("resource").toString(),
                                Integer.parseInt(mappingAttr.get("seq").toString()),mappingAttr.get("url").toString(),mappingAttr.get("startWay").toString()
                                );
                        mappingsDocDtos.add(requestMappingsDocDto);
                    }
                    /*BeanDefinitionHolder definitionHolder = new BeanDefinitionHolder(beanDefinition, beanName);
                    BeanDefinitionReaderUtils.registerBeanDefinition(definitionHolder, registry);*/
                    Method method = cmdPublishClass.getMethod("setApiDoc", ApiDocDto.class, List.class);
                    method.invoke(null,apiDocDto,null);
                    method.invoke(null,apiDocDto,mappingsDocDtos);
                }
            }
        }