java实现两个不同对象的集合复制

场景:

  • 我们开发中会遇到集合对象复制的场景,可以避免代码的重复编写

基于 com.alibaba.fastjson.JSON 实现对象集合的拷贝

复制代码
对象定义:
	ObjectA属性:id,name,age
	ObjectB属性:id,name

List<ObjectA> sourceList = new ArrayList<>();
sourceList.add(new ObjectA(1,"张三",10));
sourceList.add(new ObjectA(2,"李四",11));

List<ObjectB> targetList = JSON.parseArray(JSON.toJSONString(sourceList), ObjectB.class);

此时targetList 中数据为:
[
	{
		"id": 1,
		"name": "张三"
	},
	{
		"id": 2,
		"name": "李四"
	}
]

注意:直接使用org.springframework.beans的BeanUtils可以拷贝单个对象,对于集合中包含对象的场景是无法满足的。

相关推荐
万叶学编程1 小时前
@RequestParam 和 @RequestBody、HttpServletrequest 与HttpServletResponse
java
zfj3211 小时前
H2数据库源码学习+debug, 数据库 sql、数据库引擎、数据库存储从此不再神秘
java·数据库·sql·学习·数据库底层原理
编程、小哥哥2 小时前
Java面试实战:从Spring Boot到分布式缓存的深度探索
java·spring boot·redis·微服务·grpc·缓存技术·面试技巧
在未来等你3 小时前
互联网大厂Java求职面试:Spring AI与大模型交互的高级模式与自定义开发
java·微服务·云原生·大模型·spring ai
androidwork3 小时前
Android Kotlin权限管理最佳实践
android·java·kotlin
sakoba3 小时前
Tomcat简述介绍
java·tomcat
键盘客4 小时前
Spring Boot 配置明文密码加密,防泄漏
java·spring boot·后端·spring
二进制小甜豆4 小时前
SpringBoot快速上手
java·spring boot·maven
苹果酱05675 小时前
Golang中的runtime.LockOSThread 和 runtime.UnlockOSThread
java·vue.js·spring boot·mysql·课程设计
会飞的鱼先生5 小时前
vue2、vue3项目打包生成txt文件-自动记录打包日期:git版本、当前分支、提交人姓名、提交日期、提交描述等信息 和 前端项目的版本号json文件
前端·vue.js·git·json