参数实体拦截器配置

>s 接口参数通常分为基础类型参数和对象类型参数,本文介绍如何自定义参数元素的读取 [ApiExtra参数](doc:S3E9eryY)是拦截器解析依据的重要参数 ```java /** * 接口文档配置 */ @Configuration public class EasyApiConfig extends DefaultConfigurationCreator { @Override public AllConfiguration replenish(AllConfiguration configuration) { //拿到参数对象配置类,根据自身的规则定义文档生成规则 ReadBeanConfig beanConfig = configuration.getReadBeanConfig(); return super.replenish(configuration); } } ``` ### 接口拦截器配置:**ReadBeanConfig** ,具体可配置规则如下 **addReadParams** :`添加读取参数对象的全部字段规则,默认通过反射读取全部字段,通过设置本项可以自定义读取字段,并可以添加额外字段,这个通常可以解决一些特色的需求,如Map参数` ```java beanConfig.addReadParams((type, bind, extra) -> new ArrayList()); ``` --- **addReadDescriptors** :`添加读取参数说明规则` ```java beanConfig.addReadDescriptors((type, bind, extra) -> "这是参数说明"); ``` --- **addReadIgnore** :`添加参数忽略规则` ```java beanConfig.addReadIgnore((type, bind, extra) -> false); ``` --- **addReadJavaTypes** :`添加参数类型规则` ```java beanConfig.addReadJavaTypes((type, bind, extra) -> JavaType.String); ``` --- **addReadMockTemplates** :`添加参数mock模板规则,本规则会影响mock结果以及请求页面参数自动填充,easyapi提供了一些规则,可以查看`[【Mock模板解析拦截器】](doc:PamFJrQh)`包过随机字符,当前时间,随机数字等,也可以自定义规则,然后通过添加mock解析拦截器来处理` ```java beanConfig.addReadMockTemplates((type, bind, extra) -> "张三"); ``` --- **addReadNames** :`添加参数名读取规则,默认为field名称` ```java beanConfig.addReadNames((type, bind, extra) -> extra.getModelField().getName()); ``` --- **addReadRenewTypes** :`添加参数更新策略,当扫描的参数已存在时,需要指定更新策略,包过替换覆盖、增量更新和跳过更新,默认增量更新` ```java beanConfig.addReadRenewTypes((type, bind, extra) -> RenewType.overwrite); ``` --- **addReadRequired** :`添加参数必填规则` ```java beanConfig.addReadRequired((type, bind, extra) -> true); ``` --- **addReadShow** :`添加参数显示规则` ```java beanConfig.addReadShow((type, bind, extra) -> true); ``` --- **addReadType** :`添加参数类型读取规则` ```java beanConfig.addReadShow((type, bind, extra) -> type); ``` --- ### 参数实体拦截器默认实现类 BeanDescriptionApiReader :`根据ApidocComment注解读取参数说明` BeanDescriptionSwaggerReader :`根据swagger注解读取参数说明` BeanDescriptionCommentReader :`根据注释读取参数说明` BeanIgnoreApiReader :`根据ApidocComment注解读取参数忽略规则` BeanIgnoreCommentReader :`根据注释读取参数忽略规则` BeanJavaTypeCommentReader :`根据反射获取参数类型` BeanMockTemplateCommentReader :`根据参数类型提供默认的mock模板生成规则` BeanRequiredApiReader :`根据ApidocComment注解读取必填规则` BeanRequiredSwaggerReader :`根据swagger注解读取必填规则` BeanShowApiReader :`根据ApidocComment注解读取显示规则` BeanShowSwaggerReader :`根据swagger注解读取显示规则`