This commit is contained in:
2024-09-08 14:21:47 +08:00
parent 5cd19b3512
commit a52581836d
47 changed files with 5383 additions and 0 deletions
@@ -0,0 +1,58 @@
package com.cym.utils;
import java.util.ArrayList;
import java.util.List;
import com.cym.bean.Page;
import cn.hutool.core.bean.BeanUtil;
public class BeanExtUtil {
/**
* 根据List对象属性批量创建对应的Class List对象
*
* @param list
* @param clazz
* @return
*/
public static <T> List<T> copyListByProperties(List<?> list, Class<T> clazz) {
if (list == null) {
return null;
}
List<T> rsList = new ArrayList<>();
for (Object source : list) {
rsList.add((T) BeanUtil.copyProperties(source, clazz));
}
return rsList;
}
/**
* 根据PageResp对象属性批量创建对应的Class PageResp对象
*
* @param pageResp
* @param clazz
* @return
*/
@SuppressWarnings("unchecked")
public static <T> Page<T> copyPageByProperties(Page<?> page, Class<T> clazz) {
Page<T> pageNew = copyBeanByProperties(page, Page.class);
pageNew.setList(copyListByProperties(page.getList(), clazz));
return pageNew;
}
/**
* 按照Bean对象属性创建对应的Class对象
*
*/
public static <T> T copyBeanByProperties(Object source, Class<T> tClass) {
return BeanUtil.copyProperties(source, tClass);
}
}