类 BeanUtil

java.lang.Object
com.weicoder.common.util.BeanUtil
直接已知子类:
U.B

public sealed class BeanUtil extends Object permits U.B
Bean工具类
作者:
WD
  • 构造器详细资料

    • BeanUtil

      public BeanUtil()
  • 方法详细资料

    • copy

      public static <T> T copy(Object source, Class<T> entity)
      拷贝属性
      类型参数:
      T - 泛型
      参数:
      source - 原对象
      entity - 目标类
      返回:
      目标对象
    • copy

      public static <T> T copy(Object source, T target)
      拷贝属性
      类型参数:
      T - 泛型
      参数:
      source - 原对象
      target - 目标对象
      返回:
      目标对象
    • copy

      public static <T> T copy(Map<?,?> map, T dest)
      把Map的Key与Object属性相同的字段赋值 就是把Map对应的值赋给Object
      类型参数:
      T - 泛型
      参数:
      map - 源对象
      dest - 目标对象
      返回:
      dest 目标对象
    • copy

      public static <T> T copy(Map<?,?> map, Class<T> dest)
      把Map的Key与Class的实例属性相同的字段赋值 就是把Map对应的值赋给Object

      注: 此方法回返回Class的一个新实例对象

      类型参数:
      T - 泛型
      参数:
      map - 源对象
      dest - 目标对象的Class用dest.newInstance()生成一个新的实例 *
      返回:
      dest 目标对象的新实例
    • copy

      public static <T> List<T> copy(List<Map<String,Object>> list, Class<T> dest)
      把Map的Key与Class的实例属性相同的字段赋值 就是把Map对应的值赋给Object
      类型参数:
      T - 泛型
      参数:
      list - map对象列表
      dest - 目标对象的E用dest.getClass().newInstance()生成一个新的实例
      返回:
      转换后的对象
    • getFieldValues

      public static List<Object> getFieldValues(Collection<?> list, String fieldName)
      直接读取对象属性值, 无视private/protected修饰符, 不经过getter函数.
      参数:
      list - 列表
      fieldName - 属性名
      返回:
      属性值
    • getFieldValues

      public static List<Object> getFieldValues(Object obj)
      获得本类下所有字段值
      参数:
      obj - 对象
      返回:
      列表
    • getFieldValue

      public static Object getFieldValue(Object object, String fieldName)
      直接读取对象属性值, 无视private/protected修饰符, 不经过getter函数.
      参数:
      object - 调用的对象
      fieldName - 属性名
      返回:
      属性值
    • getFieldValue

      public static Object getFieldValue(Object object, Field field)
      直接读取对象属性值, 无视private/protected修饰符, 不经过getter函数.
      参数:
      object - 调用的对象
      field - 字段
      返回:
      属性值
    • setFieldValue

      public static void setFieldValue(Object object, String fieldName, Object value)
      直接设置对象属性值, 无视private/protected修饰符, 不经过setter函数
      参数:
      object - 对象
      fieldName - 字段名
      value - 值
    • setFieldValue

      public static void setFieldValue(Object object, int i, Object value)
      直接设置对象属性值, 无视private/protected修饰符, 不经过setter函数
      参数:
      object - 对象
      i - 字段索引
      value - 值
    • setFieldValue

      public static void setFieldValue(Object object, Field field, Object value)
      直接设置对象属性值, 无视private/protected修饰符, 不经过setter函数.
      参数:
      object - 对象
      field - 字段
      value - 值
    • invoke

      public static Object invoke(Object obj, Method method, Object... args)
      直接调用对象方法
      参数:
      obj - 调用的对象
      method - 方法
      args - 参数
      返回:
      方法返回值
    • invoke

      public static Object invoke(Object object, String name)
      直接调用对象方法
      参数:
      object - 调用的对象
      name - 方法名
      返回:
      方法返回值
    • invoke

      public static Object invoke(Object object, String name, Class<?>[] parameterTypes, Object[] parameters)
      直接调用对象方法
      参数:
      object - 调用的对象
      name - 方法名
      parameterTypes - 参数类型
      parameters - 参数
      返回:
      方法返回值
    • getField

      public static Field getField(Object object, int i)
      获得对象的字段
      参数:
      object - 对象
      i - 字段序号
      返回:
      字段
    • getField

      public static Field getField(Class<?> clazz, int i)
      获得Class的字段
      参数:
      clazz - Class
      i - 字段序号
      返回:
      字段
    • getField

      public static Field getField(Object object, String name)
      获得对象的字段
      参数:
      object - 对象
      name - 字段名
      返回:
      字段
    • getField

      public static Field getField(Class<?> clazz, String name)
      获得Class的字段
      参数:
      clazz - Class
      name - 字段名
      返回:
      字段
    • getFields

      public static List<Field> getFields(Class<?> clazz)
      循环向上转型, 获取对象的DeclaredField. 如向上转型到Object仍无法找到, 返回null.
      参数:
      clazz - 类
      返回:
      列表
    • getMethod

      public static Method getMethod(Object obj, String name, Class<?>... parameterTypes)
      获得对象的方法
      参数:
      obj - 对象
      name - 方法
      parameterTypes - 参数类型
      返回:
      方法