ledger存在部分属性类型为long或者bigdecimalledgerVO中属性均为string但是两个实体的属性名是一样的如何正常copy
在进行属性拷贝时,需要对long和BigDecimal类型的属性进行类型转换,将其转换为String类型再进行拷贝。
可以使用类型转换工具类进行转换,例如在Java中可以使用String.valueOf()方法将long类型转换为字符串,使用BigDecimal.toString()方法将BigDecimal类型转换为字符串。
示例代码:
public class LedgerConverter {
public static LedgerVO toLedgerVO(Ledger ledger) {
LedgerVO ledgerVO = new LedgerVO();
BeanUtils.copyProperties(ledger, ledgerVO);
// 类型转换
ledgerVO.setLongProperty(String.valueOf(ledger.getLongProperty()));
ledgerVO.setBigDecimalProperty(ledger.getBigDecimalProperty().toString());
return ledgerVO;
}
}
在上述代码中,先使用BeanUtils.copyProperties()方法将ledger对象的属性拷贝到ledgerVO对象中,然后再进行类型转换,将long类型和BigDecimal类型的属性转换为String类型。最后返回转换后的ledgerVO对象
原文地址: http://www.cveoy.top/t/topic/fobi 著作权归作者所有。请勿转载和采集!