java.lang.Object
org.springframework.beans.BeanUtils
tech.mhuang.pacebox.springboot.core.spring.util.DataUtil

public class DataUtil extends org.springframework.beans.BeanUtils
数据处理工具类. 该工具类基于spring提供的实现
从以下版本开始:
1.0.0
作者:
mhuang
  • 构造器概要

    构造器
    构造器
    说明
     
  • 方法概要

    修饰符和类型
    方法
    说明
    static <E> E
    copyTo(Object source, Class<E> destinationClass)
    对象Copy
    static <E> E
    copyTo(Object source, Class<E> destinationClass, String... ignore)
    对象copy忽略对应参数
    static void
    copyTo(Object source, Object target)
    将原对象的类copy到目标对象类中
    static void
    copyTo(Object source, Object target, Class<?> editable)
     
    static void
    copyTo(Object source, Object target, String... ignore)
     
    static <E> List<E>
    copyTo(List<?> source, Class<E> destinationClass)
    将源列表的数据复制到新列表的类上
    static <E> List<E>
    copyTo(List<?> source, Class<E> destinationClass, String... ignore)
    将源列表的数据复制到新列表的类上、并且忽略对应的属性
    static <E> E
    copyToKeyValue(List<?> sourceList, Class<E> destinationClass, String fieldKey, String fieldValue)
    copy對象中的某個屬性儅作爲key和值在組成對應的實體
    static Set<String>
    获取空值 用于过滤调用DataUtil。
    static <E> E
    getValueByModelKey(Object model, String key, Class<E> valueClass)
    根据模块名和参数获取value,适合不知道值的情况
    static void
    setValueByModel(Object model, String key, Object value)
    设置value值到model中

    从类继承的方法 org.springframework.beans.BeanUtils

    copyProperties, copyProperties, copyProperties, findDeclaredMethod, findDeclaredMethodWithMinimalParameters, findEditorByConvention, findMethod, findMethodWithMinimalParameters, findMethodWithMinimalParameters, findPrimaryConstructor, findPropertyForMethod, findPropertyForMethod, findPropertyType, getParameterNames, getPropertyDescriptor, getPropertyDescriptors, getResolvableConstructor, getWriteMethodParameter, instantiate, instantiateClass, instantiateClass, instantiateClass, isSimpleProperty, isSimpleValueType, resolveSignature

    从类继承的方法 java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • 构造器详细资料

    • DataUtil

      public DataUtil()
  • 方法详细资料

    • copyTo

      public static <E> List<E> copyTo(List<?> source, Class<E> destinationClass)
      将源列表的数据复制到新列表的类上
      类型参数:
      E - 转换后的类型
      参数:
      source - 源列表
      destinationClass - 转换后的类
      返回:
      E 返回转换后类的列表
    • copyTo

      public static <E> List<E> copyTo(List<?> source, Class<E> destinationClass, String... ignore)
      将源列表的数据复制到新列表的类上、并且忽略对应的属性
      类型参数:
      E - 转换后的类类型
      参数:
      source - 源列表
      destinationClass - 转换后的类
      ignore - 忽略的源列表的属性
      返回:
      E 返回转换后类的列表
    • copyTo

      public static <E> E copyTo(Object source, Class<E> destinationClass)
      对象Copy
      类型参数:
      E - copy后存放的对象类型
      参数:
      source - 原对象的类
      destinationClass - copy后存放的对象
      返回:
      E 返回copy存放的类对象
    • copyTo

      public static <E> E copyTo(Object source, Class<E> destinationClass, String... ignore)
      对象copy忽略对应参数
      类型参数:
      E - copy后存放的对象类型
      参数:
      source - 原对象的类
      destinationClass - copy后存放的对象
      ignore - copy中忽略的字段
      返回:
      E 返回copy存在的类对象
    • getValueByModelKey

      public static <E> E getValueByModelKey(Object model, String key, Class<E> valueClass) throws InvocationTargetException, IllegalAccessException
      根据模块名和参数获取value,适合不知道值的情况
      类型参数:
      E - 需要获取的key的值的对象类型
      参数:
      model - 需要获取的模块名
      key - 需要获取的key
      valueClass - 需要获取的key的值的对象
      返回:
      E 返回对应值的类型
      抛出:
      InvocationTargetException - 调用异常
      IllegalAccessException - 参数异常

      Object user, 比如 User类中有个userName的字段。你现在不知道类名,可通过 DataUtils.getValueByModelKey(user,"username",String.class)

    • setValueByModel

      public static void setValueByModel(Object model, String key, Object value) throws InvocationTargetException, IllegalAccessException
      设置value值到model中
      参数:
      model - model
      key - 字段
      value - 值
      抛出:
      InvocationTargetException - 调用异常
      IllegalAccessException - 参数异常
    • copyToKeyValue

      public static <E> E copyToKeyValue(List<?> sourceList, Class<E> destinationClass, String fieldKey, String fieldValue)
      copy對象中的某個屬性儅作爲key和值在組成對應的實體
      类型参数:
      E - copy的值的类型
      参数:
      sourceList - copy的對象列表
      destinationClass - copy的值
      fieldKey - 对应copy实体得字段
      fieldValue - 对应copy实体后字段得值。
      返回:
      E 返回copy后对应的实体 将List对象转换成对应得实体 示例:

      比如 list [{"key":"username","value":"huangmiao"},{"key":"age",value : 12}] 转换成 { "username" : "huangmiao", "age" : 12 } 调用方式 DataUtils.copyToKeyValue(list,User.class,"key","value")

    • copyTo

      public static void copyTo(Object source, Object target)
      将原对象的类copy到目标对象类中
      参数:
      source - 原对象类
      target - 目标对象类
    • copyTo

      public static void copyTo(Object source, Object target, String... ignore)
    • copyTo

      public static void copyTo(Object source, Object target, Class<?> editable)
    • getNullPropertyNames

      public static Set<String> getNullPropertyNames(Object source)
      获取空值 用于过滤调用DataUtil。copy
      参数:
      source - 对象
      返回:
      null字段