BeanUtils.copyProperties踩坑笔记。类型转换异常和泛型。

本文介绍了在使用BeanUtils.copyProperties时可能遇到的类型转换异常和泛型问题。在进行对象赋值时,需要注意源对象属性的匹配。在特定情况下,当尝试将List<String>转换为List<Long>时,由于内部转换机制,会导致类型转换异常。文章通过实例分析了这一问题并提出了相关注意事项。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

使用方式

不介绍。
参考
https://blog.csdn.net/dongyuxu342719/article/details/90242904

注意事项

1。源注意看是否一样

package org.springframework.beans;
BeanUtils.copyProperties(A,B);

package org.apache.commons.beanutils;
BeanUtils.copyProperties(A,B);

第一个A赋值给B,第二个是B赋值给A。看源码也知道不一样

2。重点说点别的,这也是做项目中踩坑比较严重的。
2.1 类型转换异常
之前遇到过一个坑,
A的数据类型中有一个,

List<String>

而需要转换成

List<Long>

这样会出现类型转换的错误,因为在底层,BeanUtils.copyProperties会首先将List<String> 装箱成Map<Object>,而取 List<Long>
拆箱的时候就会报类型转换异常。

2.2

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值