public class ClassUtil
extends org.springframework.util.ClassUtils
| Modifier and Type | Field and Description |
|---|---|
static IClassFactory |
classFactory |
| Constructor and Description |
|---|
ClassUtil() |
| Modifier and Type | Method and Description |
|---|---|
static <T> T |
call(java.lang.String methodName,
java.lang.Object obj) |
static <T> java.lang.Class<T> |
forName(java.lang.String className) |
static <T extends java.lang.annotation.Annotation> |
getAnnotation(java.lang.annotation.Annotation[] annotations,
java.lang.Class<T> annotClass) |
static <T extends java.lang.annotation.Annotation> |
getAnnotation(java.lang.Class clazz,
java.lang.Class<T> annotClass) |
static java.beans.BeanInfo |
getBeanInfo(java.lang.Class<?> clazz) |
static <T extends java.lang.annotation.Annotation> |
getClassGenricType(java.lang.Class<?> clazz,
java.lang.Class<T> annotClass) |
static java.lang.reflect.Field |
getDeclaredField(java.lang.Class<?> clazz,
java.lang.String fieldName) |
static java.lang.reflect.Field[] |
getDeclaredFields(java.lang.Class<?> clazz) |
static java.lang.reflect.Field[] |
getDeclaredFields(java.lang.Class<?> clazz,
java.lang.Class<? extends java.lang.annotation.Annotation> annotClass) |
static java.lang.reflect.Method |
getDeclaredMethod(java.lang.Class<?> clazz,
java.lang.String methodName) |
static java.lang.reflect.Method[] |
getDeclaredMethods(java.lang.Class<?> clazz) |
static <T> java.lang.Class<T> |
getFieldGenericType(java.lang.reflect.Field field) |
static <T extends java.lang.annotation.Annotation> |
getFieldGenericType(java.lang.reflect.Field field,
java.lang.Class<T> annotClass) |
static <T> java.lang.Class<T> |
getFieldGenericType(java.lang.reflect.Field field,
int index) |
static <T> T |
getFieldValue(java.lang.Class<?> clazz,
java.lang.String name) |
static <T> T |
getFieldValue(java.lang.Object target,
java.lang.Class<?> clazz,
java.lang.String name) |
static <T> java.lang.Class<T> |
getInterfaceGenricType(java.lang.Class<?> clazz,
java.lang.Class<?> interfaceClazz) |
static <T> java.lang.Class<T> |
getInterfaceGenricType(java.lang.Class<?> clazz,
java.lang.Class<?> interfaceClazz,
int index) |
static <T extends java.lang.annotation.Annotation> |
getMethodAnno(java.lang.reflect.Method method,
java.lang.Class<T> classes) |
static java.lang.annotation.Annotation[] |
getMethodAnnos(java.lang.reflect.Method method) |
static java.util.List<java.lang.Class> |
getMethodGenericParameterTypes(java.lang.reflect.Method method) |
static java.util.List<java.lang.Class> |
getMethodGenericParameterTypes(java.lang.reflect.Method method,
int index)
获取方法参数的泛型类型
|
static <T> java.lang.Class<T> |
getMethodGenericReturnType(java.lang.reflect.Method method) |
static <T> java.lang.Class<T> |
getMethodGenericReturnType(java.lang.reflect.Method method,
int index) |
static MethodProxy |
getMethodProxy(java.lang.Class<?> clazz,
java.lang.String method) |
static MethodProxy |
getMethodProxy(java.lang.Class<?> clazz,
java.lang.String method,
java.lang.Class<?>... paramTypes) |
static java.lang.annotation.Annotation |
getParamAnno(java.lang.reflect.Method method) |
static java.lang.annotation.Annotation[] |
getParamAnnos(java.lang.reflect.Method method,
java.lang.Class<? extends java.lang.annotation.Annotation> annotClass) |
static java.lang.annotation.Annotation[] |
getParamAnnos(java.lang.reflect.Method method,
int i) |
static java.lang.annotation.Annotation |
getParamAnnos(java.lang.reflect.Method method,
int i,
int j) |
static java.lang.String |
getParameterName(java.lang.reflect.Parameter param) |
static int |
getParamIndex(java.lang.reflect.Method method,
java.lang.Class<?> genericType) |
static java.lang.String[] |
getParamNames(java.lang.Class<?> clazz,
java.lang.String methodname,
java.lang.Class<?>[] parameterTypes) |
static java.lang.String[] |
getParamNames(java.lang.String classname,
java.lang.String methodname,
java.lang.Class<?>[] parameterTypes) |
static Property |
getProperty(java.lang.Class<?> clazz,
java.lang.String name) |
static Property |
getProperty(java.lang.Object target,
java.lang.String name) |
static Property[] |
getPropertys(java.lang.Class<?> clazz) |
static Property[] |
getPropertys(java.lang.Object target) |
static java.lang.Class<?> |
getPropertyType(java.lang.Class<?> clazz,
java.lang.String name) |
static <T> java.lang.Class<T> |
getRealClass(java.lang.Class<T> clazz)
获取 @{clazz} 的真实class
|
static <T> java.lang.Class<T> |
getRealClass(T target)
获取 @{target} 的真实class
|
static java.lang.Class |
getRealType(java.lang.Class clazz) |
static java.lang.Class |
getRealType(Property property) |
static java.lang.Class |
getSuperClassGenricType(java.lang.Class clazz) |
static <T> java.lang.Class<T> |
getSuperClassGenricType(java.lang.Class<T> clazz,
int index) |
static <T> T |
getTarget(T proxy)
获取 目标对象
|
static <T> T |
getValue(java.lang.Object target,
java.lang.String name) |
static boolean |
hasInterface(java.lang.Class<?> clazz,
java.lang.Class[] interfaces) |
static boolean |
hasProperty(java.lang.Class clazz,
java.lang.String name)
判断类型是否存在属性
|
static boolean |
isArray(java.lang.Class<?> clazz) |
static boolean |
isArray(java.lang.reflect.Field field) |
static boolean |
isArray(java.lang.Object object) |
static boolean |
isBasicType(java.lang.Class type) |
static boolean |
isBeanType(java.lang.Class<?> clazz) |
static boolean |
isInterface(java.lang.Class<?> clazz) |
static boolean |
isInterface(java.lang.reflect.Field field) |
static boolean |
isList(java.lang.Class<?> clazz) |
static boolean |
isList(java.lang.reflect.Field field) |
static boolean |
isList(java.lang.Object obj) |
static boolean |
isMap(java.lang.Class<?> clazz) |
static boolean |
isMap(java.lang.reflect.Field field) |
static boolean |
isMap(java.lang.Object obj) |
static boolean |
isSet(java.lang.Class<?> clazz) |
static java.lang.Object |
newInstance(java.lang.Class<?> componentType,
int length) |
static <T> T |
newInstance(java.lang.Class<T> clazz)
创建@{clazz}对象
|
static <T> T |
newInstance(java.lang.Class<T> clazz,
java.lang.Class<?>[] parameterTypes,
java.lang.Object[] parameters)
创建@{clazz}对象
|
static <T> T |
newInstance(java.lang.Class<T> clazz,
java.lang.Object parameter)
创建@{clazz}对象
|
static <T> T |
newInstance(java.lang.String className)
创建@{clazz}对象 根据@{className}
|
static void |
setFieldValue(java.lang.Object target,
java.lang.Class<?> clazz,
java.lang.String name,
java.lang.Object value) |
static void |
setFieldValue(java.lang.Object target,
java.lang.String name,
java.lang.Object value) |
static void |
setValue(java.lang.Object target,
java.lang.String name,
java.lang.Object value) |
addResourcePathToPackagePath, classNamesToString, classNamesToString, classPackageAsResourcePath, convertClassNameToResourcePath, convertResourcePathToClassName, createCompositeInterface, determineCommonAncestor, forName, getAllInterfaces, getAllInterfacesAsSet, getAllInterfacesForClass, getAllInterfacesForClass, getAllInterfacesForClassAsSet, getAllInterfacesForClassAsSet, getClassFileName, getConstructorIfAvailable, getDefaultClassLoader, getDescriptiveType, getInterfaceMethodIfPossible, getMethod, getMethodCountForName, getMethodIfAvailable, getMostSpecificMethod, getPackageName, getPackageName, getQualifiedMethodName, getQualifiedMethodName, getQualifiedName, getShortName, getShortName, getShortNameAsProperty, getStaticMethod, getUserClass, getUserClass, hasAtLeastOneMethodWithName, hasConstructor, hasMethod, hasMethod, isAssignable, isAssignableValue, isCacheSafe, isCglibProxy, isCglibProxyClass, isCglibProxyClassName, isInnerClass, isJavaLanguageInterface, isPresent, isPrimitiveArray, isPrimitiveOrWrapper, isPrimitiveWrapper, isPrimitiveWrapperArray, isUserLevelMethod, isVisible, matchesTypeName, overrideThreadContextClassLoader, resolveClassName, resolvePrimitiveClassName, resolvePrimitiveIfNecessary, toClassArraypublic static final IClassFactory classFactory
public static java.beans.BeanInfo getBeanInfo(java.lang.Class<?> clazz)
public static <T> T newInstance(java.lang.Class<T> clazz)
通过class创建对象
T - 泛型类型clazz - 类型public static <T> java.lang.Class<T> getRealClass(T target)
T - 泛型类型target - 对象public static <T> java.lang.Class<T> getRealClass(java.lang.Class<T> clazz)
T - 泛型类型clazz - classpublic static <T> T newInstance(java.lang.Class<T> clazz,
java.lang.Object parameter)
clazz - classparameter - parameterpublic static <T> T newInstance(java.lang.Class<T> clazz,
java.lang.Class<?>[] parameterTypes,
java.lang.Object[] parameters)
T - 泛型clazz - classparameterTypes - 构造方法参数表parameters - 参数public static <T> T newInstance(java.lang.String className)
className - class Namepublic static Property[] getPropertys(java.lang.Object target)
public static Property[] getPropertys(java.lang.Class<?> clazz)
public static Property getProperty(java.lang.Object target, java.lang.String name)
public static java.lang.Class<?> getPropertyType(java.lang.Class<?> clazz,
java.lang.String name)
public static Property getProperty(java.lang.Class<?> clazz, java.lang.String name)
public static <T> java.lang.Class<T> forName(java.lang.String className)
public static <T> T getFieldValue(java.lang.Class<?> clazz,
java.lang.String name)
public static <T> T getFieldValue(java.lang.Object target,
java.lang.Class<?> clazz,
java.lang.String name)
public static void setFieldValue(java.lang.Object target,
java.lang.String name,
java.lang.Object value)
public static void setFieldValue(java.lang.Object target,
java.lang.Class<?> clazz,
java.lang.String name,
java.lang.Object value)
public static <T> T getValue(java.lang.Object target,
java.lang.String name)
public static java.lang.reflect.Field getDeclaredField(java.lang.Class<?> clazz,
java.lang.String fieldName)
public static java.lang.reflect.Field[] getDeclaredFields(java.lang.Class<?> clazz,
java.lang.Class<? extends java.lang.annotation.Annotation> annotClass)
public static java.lang.reflect.Field[] getDeclaredFields(java.lang.Class<?> clazz)
public static void setValue(java.lang.Object target,
java.lang.String name,
java.lang.Object value)
public static MethodProxy getMethodProxy(java.lang.Class<?> clazz, java.lang.String method)
public static MethodProxy getMethodProxy(java.lang.Class<?> clazz, java.lang.String method, java.lang.Class<?>... paramTypes)
public static boolean isBasicType(java.lang.Class type)
public static boolean isBeanType(java.lang.Class<?> clazz)
public static java.lang.Object newInstance(java.lang.Class<?> componentType,
int length)
public static boolean isArray(java.lang.reflect.Field field)
public static boolean isArray(java.lang.Object object)
public static boolean isArray(java.lang.Class<?> clazz)
public static boolean isInterface(java.lang.reflect.Field field)
public static boolean isList(java.lang.reflect.Field field)
public static boolean isMap(java.lang.reflect.Field field)
public static boolean isList(java.lang.Object obj)
public static boolean isList(java.lang.Class<?> clazz)
public static boolean isSet(java.lang.Class<?> clazz)
public static boolean isMap(java.lang.Class<?> clazz)
public static boolean isMap(java.lang.Object obj)
public static boolean isInterface(java.lang.Class<?> clazz)
public static java.lang.Class getSuperClassGenricType(java.lang.Class clazz)
public static <T> java.lang.Class<T> getMethodGenericReturnType(java.lang.reflect.Method method,
int index)
public static <T> java.lang.Class<T> getMethodGenericReturnType(java.lang.reflect.Method method)
public static java.util.List<java.lang.Class> getMethodGenericParameterTypes(java.lang.reflect.Method method,
int index)
method - 反射方法index - 参数下标public static int getParamIndex(java.lang.reflect.Method method,
java.lang.Class<?> genericType)
public static java.util.List<java.lang.Class> getMethodGenericParameterTypes(java.lang.reflect.Method method)
public static <T> java.lang.Class<T> getFieldGenericType(java.lang.reflect.Field field)
public static <T extends java.lang.annotation.Annotation> T getClassGenricType(java.lang.Class<?> clazz,
java.lang.Class<T> annotClass)
public static <T extends java.lang.annotation.Annotation> T getFieldGenericType(java.lang.reflect.Field field,
java.lang.Class<T> annotClass)
public static <T> java.lang.Class<T> getFieldGenericType(java.lang.reflect.Field field,
int index)
public static java.lang.String[] getParamNames(java.lang.Class<?> clazz,
java.lang.String methodname,
java.lang.Class<?>[] parameterTypes)
public static java.lang.String getParameterName(java.lang.reflect.Parameter param)
public static java.lang.String[] getParamNames(java.lang.String classname,
java.lang.String methodname,
java.lang.Class<?>[] parameterTypes)
public static java.lang.annotation.Annotation getParamAnno(java.lang.reflect.Method method)
public static java.lang.annotation.Annotation[] getParamAnnos(java.lang.reflect.Method method,
java.lang.Class<? extends java.lang.annotation.Annotation> annotClass)
public static java.lang.annotation.Annotation getParamAnnos(java.lang.reflect.Method method,
int i,
int j)
public static java.lang.annotation.Annotation[] getParamAnnos(java.lang.reflect.Method method,
int i)
public static java.lang.annotation.Annotation[] getMethodAnnos(java.lang.reflect.Method method)
public static <T extends java.lang.annotation.Annotation> T getMethodAnno(java.lang.reflect.Method method,
java.lang.Class<T> classes)
public static java.lang.reflect.Method[] getDeclaredMethods(java.lang.Class<?> clazz)
public static java.lang.reflect.Method getDeclaredMethod(java.lang.Class<?> clazz,
java.lang.String methodName)
public static <T extends java.lang.annotation.Annotation> T getAnnotation(java.lang.Class clazz,
java.lang.Class<T> annotClass)
public static <T extends java.lang.annotation.Annotation> T getAnnotation(java.lang.annotation.Annotation[] annotations,
java.lang.Class<T> annotClass)
public static <T> java.lang.Class<T> getSuperClassGenricType(java.lang.Class<T> clazz,
int index)
public static <T> java.lang.Class<T> getInterfaceGenricType(java.lang.Class<?> clazz,
java.lang.Class<?> interfaceClazz)
public static <T> java.lang.Class<T> getInterfaceGenricType(java.lang.Class<?> clazz,
java.lang.Class<?> interfaceClazz,
int index)
public static java.lang.Class getRealType(Property property)
public static java.lang.Class getRealType(java.lang.Class clazz)
public static <T> T call(java.lang.String methodName,
java.lang.Object obj)
public static boolean hasInterface(java.lang.Class<?> clazz,
java.lang.Class[] interfaces)
public static <T> T getTarget(T proxy)
throws java.lang.Exception
proxy - 代理对象java.lang.Exceptionpublic static boolean hasProperty(java.lang.Class clazz,
java.lang.String name)
clazz - 类型name - 属性