zoukankan      html  css  js  c++  java
  • Beanutils.copyProperties( )用法

    一、简介:

           BeanUtils提供对Java反射和自省API的包装。其主要目的是利用反射机制对JavaBean的属性进行处理。我们知道,一个JavaBean通常包含了大量的属性,很多情况下,对JavaBean的处理导致大量get/set代码堆积,增加了代码长度和阅读代码的难度。

    二、用法:

            如果你有两个具有很多相同属性的JavaBean,一个很常见的情况就是PO对象(持久对象)和Dto对象(传输对象)。传统的方式是使用类似下面的语句对属性逐个赋值:

    // 逐一赋值  
    userDto.setUsername(user.getUsername);  
      
    userDto.setPassword(user.getPassword);  
      
    userDto.setAge(user.getAge);  
    .........
    .........

    而我们使用 BeanUtils.copyProperties() 方法以后,代码量大大的减少,而且整体程序看着也简洁明朗,代码如下:

    BeanUtils.copyProperties(userDto, user);  //第一个参数是转换后的类,第二个参数是待转换的类

    如果User和UserDto间存在名称不相同的属性,则BeanUtils不对这些属性进行处理,需要手动处理。例如:

    User类里面有个createDate 创建时间字段,而UserDto里面是createTime字段。BeanUtils.copyProperties()不会对此字段做任何处理。必须要自己手动处理。

    注意:spring和apache的copy属性的方法源和目的参数的位置正好相反,所以导包和调用的时候都要注意一下。本例使用的是Apache下的包org.apache.commons.beanutils.BeanUtils。

  • 相关阅读:
    Spring Cloud Feign服务之间的调用
    jooq映射原理_JOOQ事实:从JPA批注到JOOQ表映射
    ORM优缺点详解,已经JOOQ、MyBatis介绍
    JOOQ 踩坑和评价
    ORM框架简介及优缺点
    在linux中查看jdk的版本以及安装路径
    青春未逝,热望长存—OI生涯回忆录
    耻辱柱
    浅谈如何应对考场上可能出现的烦人小学生
    RP测试器
  • 原文地址:https://www.cnblogs.com/luxianyu-s/p/10287769.html
Copyright © 2011-2022 走看看