概述
对象拷贝的业务场景还是很多的,比如将DTO对象转成VO对象等等,这个时候就需要对象拷贝。
User1
@Date
public class User1 {
private String name;
private Integer age;
}
User2
@Date
public class User2 {
private String name;
private String age;
}
两个类中的age类型不一样
对象拷贝方式:
使用org.springframework.beans.BeanUtils spring提供的工具类
User1 user1 = new User1();
user1.setName("test")
user1.setAge(20);
// 需要将user1的值拷贝到User2中
User2 user2 = new User2();
BeanUtils.copyProperties(user1,user2); // 执行完该行代码后,user2中属性就会有值了。
注意:BeanUtils 工具类只有当两个类的属性名和属性的类型一致时才会赋值,属性名一样但是类型不一样时,就会赋值为null,【基本数据类型是有默认值的】
使用fastjson提供的JSON.parseObject()
// 当属性名一样类型不一样时可以使用。
User2 user2 = JSON.parseObject(JSON.toJSONString(user1),User2.class);
其实办法有很多,只要自己加以思考,总会找到解决的办法。加油加油!!!!
最后
以上就是淡淡过客为你收集整理的java对象拷贝的全部内容,希望文章能够帮你解决java对象拷贝所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复