加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

在java中将一个pojo的所有属性复制到另一个pojo?

发布时间:2020-12-15 00:55:13 所属栏目:Java 来源:网络整理
导读:我有一些第三方罐子的POJO,我们不能直接向客户透露. ThirdPartyPojo.java public class ThirdPartyPojo implements java.io.Serializable { private String name; private String ssid; private Integer id; //public setters and getters} 上面的类是我们正
我有一些第三方罐子的POJO,我们不能直接向客户透露.

ThirdPartyPojo.java

public class ThirdPartyPojo implements java.io.Serializable {

 private String name;
 private String ssid;
 private Integer id;

 //public setters and getters

}

上面的类是我们正在使用的第三方jar的一部分,如下所示.

ThirdPartyPojo result = someDao.getData(String id);

现在我们的计划是由于ThirdPartyPojo是第三方jar的一部分,我们不能直接向客户端发送ThirdPartyPojo结果类型.我们想创建自己的pojo,它将具有与ThirdPartyPojo.java类相同的属性.我们必须将数据从ThirdPartyPojo.java设置为OurOwnPojo.java并返回如下.

public OurOwnPojo getData(String id){

  ThirdPartyPojo result = someDao.getData(String id)

OurOwnPojo response = new OurOwnPojo(result);

 return response;

  //Now we have to populate above `result` into **OurOwnPojo** and return the same.

}

现在我想知道是否有最好的方法在OurOwnPojo.java中具有与ThirdPartyPojo.java相同的属性,并将数据从ThirdPartyPojo.java填充到OurOwnPojo.java并返回相同的内容?

public class OurOwnPojo implements java.io.Serializable {

         private ThirdPartyPojo pojo;

       public OurOwnPojo(ThirdPartyPojo pojo){

       this.pojo = pojo
      }


   //Now here i need to have same setter and getters as in ThirdPartyPojo.java

   //i can get data for getters from **pojo**

    }

谢谢!

解决方法

可能您正在搜索Apache Commons BeanUtils.copyProperties.
public OurOwnPojo getData(String id){

  ThirdPartyPojo result = someDao.getData(String id);
  OurOwnPojo myPojo=new OurOwnPojo();

  BeanUtils.copyProperties(myPojo,result);
         //This will copy all properties from thirdParty POJO

  return myPojo;
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读