zoukankan      html  css  js  c++  java
  • CopyUtil

    
    package com.zkml.common.util;
    
    
    import org.dozer.*;
    
    import java.util.ArrayList;
    import java.util.List;
    
    /**
     * @Description :基于dozer的对象拷贝,仅需要属性名完全相同
     * @Author :zhaojun
     * @Time :2019-04-22 17:13
     */
    public final class CopyUtil {
    
        /**
         * 单例 DozerBeanMapper
         */
        private final static Mapper mapper = DozerBeanMapperSingletonWrapper.getInstance();
    
        /**
         * 2个实例对象之间的拷贝
         *
         * @param fromObject 被拷贝源实例对象
         * @param toObject   拷贝目标实例对象
         */
        public static void copyBean(Object fromObject, Object toObject) {
            if (null == fromObject) {
                return;
            }
            try {
                mapper.map(fromObject, toObject);
            } catch (MappingException e) {
                e.printStackTrace();
            }
        }
    
        /**
         * 一个类实例对象拷贝成另一个目标类对象
         *
         * @param fromObject 被拷贝源实例对象
         * @param tClass     拷贝目标类对象
         * @return 拷贝目标实例对象
         */
        public static <E> E copyBean(Object fromObject, Class<E> tClass) {
            if (null == fromObject) {
                return null;
            }
            E obj = null;
            try {
                obj = mapper.map(fromObject, tClass);
            } catch (MappingException e) {
                e.printStackTrace();
            }
            return obj;
        }
    
        /**
         * 一个类实例对象集合拷贝成另一个目标类对象集合
         *
         * @param fromObjectList 被拷贝源实例对象集合
         * @param tClass         拷贝目标类对象
         * @return 拷贝目标实例对象集合
         */
        public static <E> List<E> copyBeanList(List<?> fromObjectList, Class<E> tClass) {
            List<E> resultList = new ArrayList<E>();
            if (null == fromObjectList || fromObjectList.isEmpty()) {
                return resultList;
            }
            for (Object obj : fromObjectList) {
                if (null != obj) {
                    resultList.add(copyBean(obj, tClass));
                }
            }
            return resultList;
        }
    }
    
    
    
  • 相关阅读:
    php hook example
    sql 建立数据库,表格,索引,主键
    js 高级函数 之示例
    js 事件
    DOM 操作内容 innerText/innerHTML
    DOM 之 document 查找元素方法
    BOM 之 screen history
    Hadoop源码篇--Client源码
    Spark算子篇 --Spark算子之combineByKey详解
    Pandas库的使用--Series
  • 原文地址:https://www.cnblogs.com/fangh816/p/13295595.html
Copyright © 2011-2022 走看看