|
@ -1,12 +1,14 @@ |
|
|
package org.dromara.common.core.utils; |
|
|
package org.dromara.common.core.utils; |
|
|
|
|
|
|
|
|
import cn.hutool.core.collection.CollUtil; |
|
|
import cn.hutool.core.collection.CollUtil; |
|
|
|
|
|
import cn.hutool.core.convert.Convert; |
|
|
import cn.hutool.core.map.MapUtil; |
|
|
import cn.hutool.core.map.MapUtil; |
|
|
import cn.hutool.core.util.ObjectUtil; |
|
|
import cn.hutool.core.util.ObjectUtil; |
|
|
import io.github.linpeilie.Converter; |
|
|
import io.github.linpeilie.Converter; |
|
|
import lombok.AccessLevel; |
|
|
import lombok.AccessLevel; |
|
|
import lombok.NoArgsConstructor; |
|
|
import lombok.NoArgsConstructor; |
|
|
|
|
|
|
|
|
|
|
|
import java.util.ArrayList; |
|
|
import java.util.List; |
|
|
import java.util.List; |
|
|
import java.util.Map; |
|
|
import java.util.Map; |
|
|
|
|
|
|
|
@ -19,7 +21,7 @@ import java.util.Map; |
|
|
@NoArgsConstructor(access = AccessLevel.PRIVATE) |
|
|
@NoArgsConstructor(access = AccessLevel.PRIVATE) |
|
|
public class MapstructUtils { |
|
|
public class MapstructUtils { |
|
|
|
|
|
|
|
|
private final static Converter CONVERTER = SpringUtils.getBean(Converter.class); |
|
|
// private final static Converter CONVERTER = SpringUtils.getBean(Converter.class);
|
|
|
|
|
|
|
|
|
/** |
|
|
/** |
|
|
* 将 T 类型对象,转换为 desc 类型的对象并返回 |
|
|
* 将 T 类型对象,转换为 desc 类型的对象并返回 |
|
@ -35,7 +37,7 @@ public class MapstructUtils { |
|
|
if (ObjectUtil.isNull(desc)) { |
|
|
if (ObjectUtil.isNull(desc)) { |
|
|
return null; |
|
|
return null; |
|
|
} |
|
|
} |
|
|
return CONVERTER.convert(source, desc); |
|
|
return Convert.convert(desc,source); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
/** |
|
|
/** |
|
@ -45,15 +47,15 @@ public class MapstructUtils { |
|
|
* @param desc 转换后的对象 |
|
|
* @param desc 转换后的对象 |
|
|
* @return desc |
|
|
* @return desc |
|
|
*/ |
|
|
*/ |
|
|
public static <T, V> V convert(T source, V desc) { |
|
|
// public static <T, V> V convert(T source, V desc) {
|
|
|
if (ObjectUtil.isNull(source)) { |
|
|
// if (ObjectUtil.isNull(source)) {
|
|
|
return null; |
|
|
// return null;
|
|
|
} |
|
|
// }
|
|
|
if (ObjectUtil.isNull(desc)) { |
|
|
// if (ObjectUtil.isNull(desc)) {
|
|
|
return null; |
|
|
// return null;
|
|
|
} |
|
|
// }
|
|
|
return CONVERTER.convert(source, desc); |
|
|
// return CONVERTER.convert(source, desc);
|
|
|
} |
|
|
// }
|
|
|
|
|
|
|
|
|
/** |
|
|
/** |
|
|
* 将 T 类型的集合,转换为 desc 类型的集合并返回 |
|
|
* 将 T 类型的集合,转换为 desc 类型的集合并返回 |
|
@ -69,24 +71,30 @@ public class MapstructUtils { |
|
|
if (CollUtil.isEmpty(sourceList)) { |
|
|
if (CollUtil.isEmpty(sourceList)) { |
|
|
return CollUtil.newArrayList(); |
|
|
return CollUtil.newArrayList(); |
|
|
} |
|
|
} |
|
|
return CONVERTER.convert(sourceList, desc); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
// 创建一个新的列表,用于保存转换后的对象
|
|
|
* 将 Map 转换为 beanClass 类型的集合并返回 |
|
|
List<V> resultList = new ArrayList<>(); |
|
|
* |
|
|
|
|
|
* @param map 数据来源 |
|
|
sourceList.forEach(source -> Convert.convert(desc,source)); |
|
|
* @param beanClass bean类 |
|
|
|
|
|
* @return bean对象 |
|
|
return resultList; |
|
|
*/ |
|
|
|
|
|
public static <T> T convert(Map<String, Object> map, Class<T> beanClass) { |
|
|
|
|
|
if (MapUtil.isEmpty(map)) { |
|
|
|
|
|
return null; |
|
|
|
|
|
} |
|
|
|
|
|
if (ObjectUtil.isNull(beanClass)) { |
|
|
|
|
|
return null; |
|
|
|
|
|
} |
|
|
|
|
|
return CONVERTER.convert(map, beanClass); |
|
|
|
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
// /**
|
|
|
|
|
|
// * 将 Map 转换为 beanClass 类型的集合并返回
|
|
|
|
|
|
// *
|
|
|
|
|
|
// * @param map 数据来源
|
|
|
|
|
|
// * @param beanClass bean类
|
|
|
|
|
|
// * @return bean对象
|
|
|
|
|
|
// */
|
|
|
|
|
|
// public static <T> T convert(Map<String, Object> map, Class<T> beanClass) {
|
|
|
|
|
|
// if (MapUtil.isEmpty(map)) {
|
|
|
|
|
|
// return null;
|
|
|
|
|
|
// }
|
|
|
|
|
|
// if (ObjectUtil.isNull(beanClass)) {
|
|
|
|
|
|
// return null;
|
|
|
|
|
|
// }
|
|
|
|
|
|
// return CONVERTER.convert(map, beanClass);
|
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
|
} |
|
|
} |
|
|