例子如下:
我自定义的Anotation Validation package com.wanghaisheng.generator.support; import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target; @Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
public @interface Validate {
//必输字段
boolean required() default false;
//最小长度
int minLength() default 0;
//最大长度
int maxlength() default 0;
} 当我在使用java 反射取得此Anotation时,怎样取得Anotation注解成员的默认值?
如:Validate.required()为false,我如何才能用代码取得他的默认值?
还有我如何通过代码得到一个Anotation的所有注解成员名呢?
如:怎样通过代码得到Validate 的注解成员名:required,minLength,maxlength
我相信这是能够做到的,不然像eclipse那样的IDE怎样实现代码提示呢?
大侠们,给小弟出出主意啊!
急啊!
我自定义的Anotation Validation package com.wanghaisheng.generator.support; import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target; @Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
public @interface Validate {
//必输字段
boolean required() default false;
//最小长度
int minLength() default 0;
//最大长度
int maxlength() default 0;
} 当我在使用java 反射取得此Anotation时,怎样取得Anotation注解成员的默认值?
如:Validate.required()为false,我如何才能用代码取得他的默认值?
还有我如何通过代码得到一个Anotation的所有注解成员名呢?
如:怎样通过代码得到Validate 的注解成员名:required,minLength,maxlength
我相信这是能够做到的,不然像eclipse那样的IDE怎样实现代码提示呢?
大侠们,给小弟出出主意啊!
急啊!
Validate validate = method.getAnnotation(Validate.class);
if(validate != null) {
boolean required = validate.required();
}
Method[] ms = clz.getDeclaredMethods();
然后判断ms[i].getDefaultValue()返回如果不是null就表示有定义默认值了