Java 转换对象的方法

1. 
BeanUtils.copyProperties(source,target,target.class);
// BeanUtils导包如下
import org.springframework.beans.BeanUtils;

可以看到该包下所有方法都是void类型,无返回值

因此需要我们提前创建一个实例对象去接受目标对象(转换后的对象) 

UserDTO targetUser = new UserDTO();
BeanUtils.copyProperties(selectUser,targetUser,UserDTO.class);
System.out.println("UserDTO:"+targetUser);


2. 

BeanUtil.copyProperties(source,target.class);

该方法导包为

cn.hutool.core.bean.BeanUtil;

可以看到该实现方法大部分仍然是void类型,但与BeanUtils不同。存在一个具有泛型的返回类型方法,因此可以无需提前创建 转换的实例对象。


补充:

当使用源对象为Object 类型时(例如从JSON字符串转换成对象类型的数据),应该使用第二种方法。若使用第一种方式时,由于Object类型内不含任何属性/getter和setter方法,因此,在转换过程中,无法正常从Object对象获取数据,只能获取到null。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值