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 List copyListByProperties(List list, Class clazz) { if (list == null) { return null; } List 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 Page copyPageByProperties(Page page, Class clazz) { Page pageNew = copyBeanByProperties(page, Page.class); pageNew.setList(copyListByProperties(page.getList(), clazz)); return pageNew; } /** * 按照Bean对象属性创建对应的Class对象 * */ public static T copyBeanByProperties(Object source, Class tClass) { return BeanUtil.copyProperties(source, tClass); } }