public class ClassUtil extends Object
| 构造器和说明 |
|---|
ClassUtil() |
| 限定符和类型 | 方法和说明 |
|---|---|
static Object |
getAnnotationFieldValue(Class target,
String annotation,
String field) |
static Object |
getAnnotationFieldValue(Field target,
String annotation,
String field) |
static List<Object> |
getAnnotationFieldValues(Class target,
String annotation,
String field) |
static List<Object> |
getAnnotationFieldValues(Class target,
String annotation,
String field,
int qty)
反射类注解的属性值 在不确定具体注解与属性的情况下使用
注解名与属性名不区分大小写
*表示任意字符
|
static List<Object> |
getAnnotationFieldValues(Field target,
String annotation,
String field) |
static List<Object> |
getAnnotationFieldValues(Field target,
String annotation,
String field,
int qty)
反射属性target上的注解, 获取注解上指定的属性值
注解名与属性名不区分大小写
*表示任意字符
|
static List<Class> |
getClasses(String pack,
Class... bases)
pack包下的所有类 不包括jar包中定义类
|
static Class |
getComponentClass(Class clazz)
集合或数组的泛型类
|
static Class |
getComponentClass(Field field)
根据属性获取 集合或数组的泛型类
|
static Class |
getComponentClass(Object obj) |
static Class[] |
getComponentClasses(Field field)
根据属性获取 集合或数组的泛型类,如果不同Map类型 只返回class[0]
|
static Field |
getField(Class<?> clazz,
String name) |
static Field |
getField(Class<?> clazz,
String name,
boolean recursion) |
static Field |
getField(Class<?> clazz,
String name,
boolean recursion,
boolean ignoreCase)
根据名称获取属性
|
static Field |
getField(List<Field> fields,
String name,
boolean ignoreCase,
boolean ignoreSplit)
根据名称过滤属性
|
static Annotation |
getFieldAnnotation(Field field,
String... names)
根据注解名称 获取属性上的注解
|
static List<Annotation> |
getFieldAnnotations(Field field,
String... names)
根据注解名称 获取属性上的注解
|
static List<Field> |
getFields(Class<?> clazz) |
static List<Field> |
getFields(Class<?> clazz,
boolean statics,
boolean finals)
提取类及父类的所有属性
|
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 List<Method> |
getMethods(Class<?> clazz,
boolean recursion) |
static boolean |
hasAnnotation(Class clazz,
String annotation) |
static boolean |
hasAnnotation(Field field,
String... annotations) |
static boolean |
isAllSub(Class<?> clazz,
Class<?>... bases)
是否是bases子类或实现了 bases 接口(满足全部)
|
static boolean |
isInSub(Class<?> clazz,
Class<?>... bases)
clazz是否是bases子类或实现了bases接口(满足其中一个)
|
static boolean |
isJavaType(Object check)
是否java基础类型(以java.开头的类)
|
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 Object |
newInstance(Class clazz) |
static String |
parseAnnotationFieldValue(Class clazz,
String... configs)
根据注解名与注解类属性 获取指定类上的注解值
|
static String |
parseAnnotationFieldValue(Field field,
String... configs)
根据注解名与注解类属性 获取指定属性上的注解值
|
static void |
regImplement(Class interfaceClass,
Class implementClass) |
static String |
type(Class clazz) |
static String |
type(Field field) |
static String |
type(Object obj)
对象类型
int[] > int[] Integer[] > java.long.Integer[] |
public static boolean isPrimitiveClass(Object obj)
obj - 对象或类, 如果是对象先getClass()public static boolean isJavaType(Object check)
check - 类或对象public static boolean isWrapClass(Object obj)
obj - objpublic static boolean isInSub(Class<?> clazz, Class<?>... bases)
clazz - 类bases - 父类或接口public static boolean isAllSub(Class<?> clazz, Class<?>... bases)
clazz - clazzbases - basespublic static List<Object> getAnnotationFieldValues(Class target, String annotation, String field, int qty)
target - 类annotation - 注解类名 如: *, Table*field - 属性名 如: *, value, name, *package*qty - 最多取几个值 -1:不限制public static List<Object> getAnnotationFieldValues(Class target, String annotation, String field)
public static Object getAnnotationFieldValue(Class target, String annotation, String field)
public static List<Object> getAnnotationFieldValues(Field target, String annotation, String field, int qty)
target - 类的属性annotation - 注解类名 支持模糊匹配 如: *, Table*field - 注解的属性名 如: *, value, name, *package*qty - 最多取几个值 -1:不限制public static List<Object> getAnnotationFieldValues(Field target, String annotation, String field)
public static Object getAnnotationFieldValue(Field target, String annotation, String field)
public static List<Field> getFields(Class<?> clazz, boolean statics, boolean finals)
clazz - clazzstatics - 是否返回静态属性finals - 是否返回final属性public static Method getMethod(Class<?> clazz, String name, boolean recursion, Class<?>... parameterTypes)
public static Field getField(Class<?> clazz, String name, boolean recursion, boolean ignoreCase)
clazz - 类name - 属性名recursion - 是否递归父类ignoreCase - 是否忽略大小写及其他符号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<Annotation> getFieldAnnotations(Field field, String... names)
field - 属性names - 注解名称public static Annotation getFieldAnnotation(Field field, String... names)
field - 属性names - 注解名称public 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*public static String parseAnnotationFieldValue(Field field, String... configs)
field - field上的注解configs - 注册名.注解属性名, 不区分大小写 支持模糊匹配 如 *Table.ID*
可以只提供注解名如Column则依次按Column.name, Column.value解析public static Class getComponentClass(Field field)
field - 属性public static Class[] getComponentClasses(Field field)
field - 属性public static Class getComponentClass(Class clazz)
clazz - 需要是实例化过的对象getClass()返回的结果public static String type(Object obj)
obj - 对象Copyright © 2025. All rights reserved.