高分求VO到PO的自动转换
高分求VO到PO的自动转换  
说了给分!急急急

解决方案 »

  1.   

    此回复为自动发出,仅用于显示而已,并无任何其他特殊作用
    楼主【xueshenzhou】截止到2008-07-19 21:07:19的历史汇总数据(不包括此帖):
    发帖的总数量:2                        发帖的总分数:20                       每贴平均分数:10                       
    回帖的总数量:84                       得分贴总数量:20                       回帖的得分率:23%                      
    结贴的总数量:1                        结贴的总分数:0                        
    无满意结贴数:1                        无满意结贴分:20                       
    未结的帖子数:1                        未结的总分数:20                       
    结贴的百分比:50.00 %               结分的百分比:0.00  %                  
    无满意结贴率:100.00%               无满意结分率:---------------------
    楼主加油
      

  2.   

    /**
     * 将传入的类进行拷贝,仅限于javabean
     * @param obj 要拷贝的目标类
     * @param clazz 按这个类来进行拷贝
     * @return  拷贝的结果类
     */
    @SuppressWarnings("unchecked")
    public static Object beanCopy(Object obj, Class clazz){
    Object o = null;
    try {
    o = clazz.newInstance();
    Field [] fields = clazz.getDeclaredFields();
    for(Field f : fields){
    Method srcMethod = o.getClass().getDeclaredMethod("get" + getBigStr(f.getName()));
    Method destMethod = clazz.getDeclaredMethod("set" + getBigStr(f.getName()), f.getType());
    destMethod.invoke(o, srcMethod.invoke(obj));
    }
    } catch (InstantiationException e) {
    e.printStackTrace();
    } catch (IllegalAccessException e) {
    e.printStackTrace();
    } catch (SecurityException e) {
    e.printStackTrace();
    } catch (NoSuchMethodException e) {
    e.printStackTrace();
    } catch (IllegalArgumentException e) {
    e.printStackTrace();
    } catch (InvocationTargetException e) {
    e.printStackTrace();
    }

    return o;
    } /**
     * 将传入的字符串首字母大写
     * @param name
     * @return
     */
    private static String getBigStr(String name) {
    String str = "";
    str = name.substring(0,1).toUpperCase() + name.substring(1);
    return str;
    }利用反射。 自己读读吧
      

  3.   

    建议用BeanUtils,尽量用jdk自带的东西!
    另外,没必要自动转换吧,完全可以手动!毕竟是两个层面的东西,有时候字段还会有差异!
      

  4.   

    BeanUtils 是什么类,有哪位兄弟能说得更详细点呀
    谢先了
      

  5.   

    apache有个类.叫beanutils.可以深度复制对象的.不过对不同类型属性的没法转换.
    没事的话自己写个反射类转换也不错..