java list对象拷贝和对象拷贝
程序员文章站
2022-07-10 18:55:08
工具类:public final class BeanUtil { private BeanUtil() { } /** * @param source * @param clazz * @return * @throws IllegalAccessException * @throws InvocationTargetException * @throws Instantia....
工具类:public final class BeanUtil<T extends Serializable> { private BeanUtil() { } /** * @param source * @param clazz * @return * @throws IllegalAccessException * @throws InvocationTargetException * @throws InstantiationException */ public static <T> T copyProperties(Object source, Class<T> clazz) { if (source == null) { return null; } T t = null; try { t = clazz.newInstance(); BeanUtils.copyProperties(source, t); } catch (Exception e) { log.error("请求失败", e); } return t; } /** * @param source * @param clazz * @return * @throws IllegalAccessException * @throws InvocationTargetException * @throws InstantiationException */ public static <T> List<T> copyProperties(List<?> source, Class<T> clazz) { if (source == null || source.size() == 0) { return Collections.emptyList(); } List<T> res = new ArrayList<>(source.size()); for (Object o : source) { T t = null; try { t = clazz.newInstance(); BeanUtils.copyProperties(o, t); } catch (Exception e) { log.error("请求失败", e); } res.add(t); } return res; } }
具体实现:
BeanUtil.copyProperties(record, CourseChapterPeriodPicVO.class);
其中record的被转化的对象 CourseChapterPeriodPicVO是转化成的对象 就是把record转化为CourseChapterPeriodPicVO
BeanUtil.copyProperties(schoolFileInfos, SchoolFileInfoDTO.class); 这是list之间的转
本文地址:https://blog.csdn.net/Jzq0006/article/details/107686722