zoukankan      html  css  js  c++  java
  • 复制JAVABEAN中的属性到另外一个JAVABEAN中

    下午写了一个属性复制方法,记录如下:

    class POUtil{
        /**
         * 
         * Function : 将一个source中的属性到复制到dest
         * @author : Liaokailin
         * CreateDate : 2014-6-30
         * version : 1.0
         * @param <T>
         * @param dest
         * @param source
         * @return
         * @throws IntrospectionException
         */
        public static <T extends PO> T copyBean(T dest,PO source) throws IntrospectionException{
            BeanInfo beanInfo = Introspector.getBeanInfo(dest.getClass()) ;
            PropertyDescriptor[] pdes = beanInfo.getPropertyDescriptors() ;
            for(int i = 0,length =pdes.length ;i<length ;i++ ){
                PropertyDescriptor pd = pdes[i] ;
            //    System.out.println(pd.getName());
                try {
                    PropertyDescriptor sourcePd = new PropertyDescriptor(pd.getName(), source.getClass()) ;
                    Method sourceMethod = sourcePd.getReadMethod() ;
                    Object result = sourceMethod.invoke(source) ;
                    Method pdWriteMethod = pd.getWriteMethod() ;
                    pdWriteMethod.invoke(dest, result) ;
                } catch (Exception e) {
                     continue ;
                }
            }
            return dest ;
        }
    }
  • 相关阅读:
    java输出菱型
    java----内部类
    java中的多重继承
    java算法--三个数字比较大小
    Python基础(2)
    Python基础(1)
    Redis主从同步
    一种高效的进程间的通信方式
    自旋锁和互斥锁的区别
    Linux读写锁的使用
  • 原文地址:https://www.cnblogs.com/liaokailin/p/3817060.html
Copyright © 2011-2022 走看看