Class ReflectUtil

java.lang.Object
org.huiche.core.support.ReflectUtil

public final class ReflectUtil extends Object
反射工具类
Author:
Maning
  • Method Details

    • getEntityFields

      public static Field[] getEntityFields(Class<?> clazz)
      获取实体类的所有字段,顺序从顶层父类到当前类,每个类内按声明顺序。 排除 final 和 static 和 transient 字段
      Parameters:
      clazz - 目标类
      Returns:
      字段数组
    • parameterizedType

      public static ParameterizedType parameterizedType(Class<?> rawType, Type... typeArgs)
      合成一个ParameterizedType
      Parameters:
      rawType - 原始类型
      typeArgs - 泛型
      Returns:
      带泛型的类型
    • unreflectGetter

      public static Getter unreflectGetter(Field field)
      创建Field的getter方法的MethodHandle(只是为了处理异常)
      Parameters:
      field - 字段
      Returns:
      MethodHandle
    • unreflectInstantiator

      public static Supplier<Object> unreflectInstantiator(Class<?> cls)
      创建实例化提供者
      Parameters:
      cls - 实体类类型
      Returns:
      MethodHandle
    • unreflectInstantiator

      public static Function<Object[],Object> unreflectInstantiator(Class<?> cls, Field[] fields)
      创建实例化方法(传入参数,返回实例)
      Parameters:
      cls - 实体类类型
      fields - 字段
      Returns:
      MethodHandle
    • unreflectSetter

      public static Setter unreflectSetter(Field field)
      创建Field的setter方法的MethodHandle(只是为了处理异常)
      Parameters:
      field - 字段
      Returns:
      MethodHandle