您的位置:首页 > 编程语言 > Java开发

利用java反射实现Java Bean 类型转换

2007-11-13 11:53 477 查看
在Business layer 和 web layer 需要经常进行Bean的转换.   

我写了个比较common的方法, 可以批量转换Bean.

     前提: 

1.   已知目标Bean的Class.      

2.   目标bean 有一个参数是源Bean的构造函数.

    /**
     *     
     * @Function  Transfer Source Bean to Dest Bean
     * @param src: SourceBean's List.   wrapedClass: Dest Bean's Class
     * @return List : DestBean's List
     * @exception
     *
     * @author Fred 2007-11-13
     */
    public static List wrapToView(List src, Class wrapedClass) {
        try {
            List dest = new LinkedList();
            if (src.size() == 0)
                return dest;
            Constructor c = wrapedClass.getConstructor(new Class[] { src.get(0).getClass() });
            for (int i = 0; i < src.size(); i++) {
                Object o = c.newInstance(new Object[] { src.get(i) });
                dest.add(o);
            }
            return dest;
        } catch (SecurityException e) {          
            e.printStackTrace();
            return null;
        } catch (NoSuchMethodException e) {         
            e.printStackTrace();
            return null;
        } catch (IllegalArgumentException e) {         
            e.printStackTrace();
            return null;
        } catch (InstantiationException e) {         
            e.printStackTrace();
            return null;
        } catch (IllegalAccessException e) {          
            e.printStackTrace();
            return null;
        } catch (InvocationTargetException e) {           
            e.printStackTrace();
            return null;
        }
    }
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐