Files
jshERP/jshERP-boot/src/main/java/com/jsh/erp/utils/AnnotationUtils.java
2021-04-07 23:53:57 +08:00

29 lines
934 B
Java

package com.jsh.erp.utils;
import java.lang.annotation.Annotation;
import java.lang.annotation.Documented;
/**
* @author jishenghua qq752718920 2018-10-7 15:26:27
*/
public class AnnotationUtils {
public static <A extends Annotation> A getAnnotation(Class<?> cls, Class<A> annotationClass) {
A res = cls.getAnnotation(annotationClass);
if (res == null) {
for (Annotation annotation : cls.getAnnotations()) {
if (annotation instanceof Documented) {
break;
}
res = getAnnotation(annotation.annotationType(), annotationClass);
if (res != null)
break;
}
}
return res;
}
public static <T, A extends Annotation> A getAnnotation(T obj, Class<A> annotationClass) {
return getAnnotation(obj.getClass(), annotationClass);
}
}