public class ClassUtil extends Object
| 构造器和说明 |
|---|
ClassUtil() |
| 限定符和类型 | 方法和说明 |
|---|---|
static List<Class> |
getClasses(String pack,
Class... bases)
pack包下的所有类 不包括jar包中定义类
|
static Field |
getField(Class<?> clazz,
String name) |
static Field |
getField(Class<?> clazz,
String name,
boolean recursion) |
static Field |
getField(List<Field> fields,
String name,
boolean ignoreCase,
boolean ignoreSplit)
根据名称过滤属性
|
static List<Field> |
getFields(Class<?> clazz)
提取类及父类的所有属性
|
static List<Field> |
getFieldsByAnnotation(Class clazz,
Class annotation)
查询指定类的有annotation注解的属性
|
static List<Field> |
getFieldsByAnnotation(Class clazz,
String... annotations)
查询指定类的有annotation注解的属性
|
static List<String> |
getFieldsName(Class<?> clazz) |
static Method |
getMethod(Class<?> clazz,
String name,
boolean recursion,
Class<?>... parameterTypes) |
static Method |
getMethod(Class<?> clazz,
String name,
Class<?>... parameterTypes) |
static boolean |
isAllSub(Class<?> c,
Class<?>... bases)
是否是bases子类或实现了basees接口(满足全部)
|
static boolean |
isInSub(Class<?> c,
Class<?>... bases)
是否是bases子类或实现了basees接口(满足其中一个)
|
static boolean |
isPrimitiveClass(Object obj)
是否是基础类型(不包含String类型)
|
static boolean |
isWrapClass(Object obj)
是否是封装类(基础类型之外的类) String类返回true
|
static List<Class<?>> |
list(String packageName,
boolean recursion,
Class<?>... bases) |
static List<String> |
names(String packageName,
boolean recursion,
Class<?>... bases) |
static String |
parseAnnotationFieldValue(Class clazz,
String... configs)
根据注解名与注解类属性 获取指定类上的注解值
|
static Object |
parseAnnotationFieldValue(Class target,
String annotation,
String field) |
static String |
parseAnnotationFieldValue(Field field,
String... configs)
根据注解名与注解类属性 获取指定属性上的注解值
|
static Object |
parseAnnotationFieldValue(Field target,
String annotation,
String field) |
static List<Object> |
parseAnnotationFieldValues(Class target,
String annotation,
String field) |
static List<Object> |
parseAnnotationFieldValues(Class target,
String annotation,
String field,
int qty)
反射类注解的属性值 在不确定具体注解与属性的情况下使用
注解名与属性名不区分大小写
*表示任意字符
|
static List<Object> |
parseAnnotationFieldValues(Field target,
String annotation,
String field) |
static List<Object> |
parseAnnotationFieldValues(Field target,
String annotation,
String field,
int qty)
反射属性target上的注解,获取注解上指定的属性值
注解名与属性名不区分大小写
*表示任意字符
|
public static boolean isPrimitiveClass(Object obj)
obj - objpublic static boolean isWrapClass(Object obj)
obj - objpublic static boolean isInSub(Class<?> c, Class<?>... bases)
c - cbases - basespublic static boolean isAllSub(Class<?> c, Class<?>... bases)
c - cbases - basespublic static List<Object> parseAnnotationFieldValues(Class target, String annotation, String field, int qty)
target - 类annotation - 注解类名 如: *, Table*field - 属性名 如: *, value, name, *package*qty - 最多取几个值 -1:不限制public static List<Object> parseAnnotationFieldValues(Class target, String annotation, String field)
public static Object parseAnnotationFieldValue(Class target, String annotation, String field)
public static List<Object> parseAnnotationFieldValues(Field target, String annotation, String field, int qty)
target - 属性annotation - 注解类名 支持模糊匹配 如: *, Table*field - 注解的属性名 如: *, value, name, *package*qty - 最多取几个值 -1:不限制public static List<Object> parseAnnotationFieldValues(Field target, String annotation, String field)
public static Object parseAnnotationFieldValue(Field target, String annotation, String field)
public static List<Field> getFields(Class<?> clazz)
clazz - clazzpublic static Method getMethod(Class<?> clazz, String name, boolean recursion, Class<?>... parameterTypes)
public static Field getField(List<Field> fields, String name, boolean ignoreCase, boolean ignoreSplit)
fields - 属性sname - 名称ignoreCase - 是否忽略大小写ignoreSplit - 是否忽略分隔符号public static List<Field> getFieldsByAnnotation(Class clazz, Class annotation)
clazz - clazzannotation - annotationpublic static List<Field> getFieldsByAnnotation(Class clazz, String... annotations)
clazz - clazzannotations - annotation 支持模糊匹配,不区分大小写 如 Table*public static List<Class> getClasses(String pack, Class... bases)
pack - packbases - basespublic static String parseAnnotationFieldValue(Class clazz, String... configs)
clazz - clazz上的注解configs - 注册名.注解属性名,不区分大小写 支持模糊匹配 如 *Table.ID*Copyright © 2022. All rights reserved.