All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.jd.httpservice.RequestParamMap Maven / Gradle / Ivy

There is a newer version: 2.1.4.RELEASE
Show newest version
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 Classconverter() default PropertiesConverter.class;

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy