com.jd.httpservice.RequestParamMap Maven / Gradle / Ivy
package com.jd.httpservice;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
/**
* 用于标识一个 POJO 类型的参数将其成员转换为请求参数表;
*
* 此标注应用在方法参数中,并将参数对象中标注为 RequestParam 的属性作为请求参数加入参数表;
*
* @author haiq
*
*/
@Target({ ElementType.PARAMETER })
@Retention(RetentionPolicy.RUNTIME)
public @interface RequestParamMap {
/**
* 属性前缀;
*
* 当一个方法中通过 RequestParams 定义了多个参数表时,可通过定义不同的前缀以防止属性名称冲突;
*
* @return
*/
public String prefix() default "";
/**
* 属性分隔符;
*
* 最终的参数名由前缀+分隔符+原始参数名构成;
*
* @return
*/
public String seperator() default ".";
/**
* 参数是否必须提供;
*
* 运行时如果必须的参数为 null 将引发异常;
*
* 默认为 true;
*
* @return
*/
public boolean required() default true;
/**
* 自定义的转换器;
*
* 必须实现 PropertiesConverter 接口;
*
* @return
*/
public Class>converter() default PropertiesConverter.class;
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy