java 两个对象之间进行数据合并

文章介绍了Java中的实体类合并方法`combineSydwCore`,用于填充空字段,同时提到了Docker和Kubernetes的安装与应用,以及在阿里内部推荐的K8S+Docker学习资源。
摘要由CSDN通过智能技术生成

@Override

public String toString() {

return “student{” +

“name='” + name + ‘\’’ +

“, age=” + age +

“, sex='” + sex + ‘\’’ +

‘}’;

}

public Student() {

}

}

2.合并方法

/*

以第一个实体类为主,如果第一个的实体类某个字段为空,则会吧第二个实体类的值取过来进行赋值,

如果不为空的则不作改变

*/

//针对所用对象

private static Object combineSydwCore(Object sourceBean, Object targetBean) {

Class sourceBeanClass = sourceBean.getClass();

Class targetBeanClass = targetBean.getClass();

Field[] sourceFields = sourceBeanClass.getDeclaredFields();

Field[] targetFields = sourceBeanClass.getDeclaredFields();

for (int i = 0; i < sourceFields.length; i++) {

Field sourceField = sourceFields[i];

Field targetField = targetFields[i];

sourceField.setAccessible(true);

targetField.setAccessible(true);

try {

if (!(sourceField.get(sourceBean) == null)) {

targetField.set(targetBean, sourceField.get(sourceBean));

}

} catch (IllegalArgumentException | IllegalAccessException e) {

e.printStackTrace();

}

}

return targetBean;

}

//针对单一对象,返回类型是对于实体类

/*

以第一个实体类为主,如果第一个的实体类某个字段为空,则会吧第二个实体类的值取过来进行赋值,

如果不为空的则不作改变

*/

private static Student combineSydwCore(Student sourceBean, Student targetBean) {

Class sourceBeanClass = sourceBean.getClass();

Class targetBeanClass = targetBean.getClass();

Field[] sourceFields = sourceBeanClass.getDeclaredFields();

Field[] targetFields = targetBeanClass.getDeclaredFields();

for (int i = 0; i < sourceFields.length; i++) {

Field sourceField = sourceFields[i];

if (Modifier.isStatic(sourceField.getModifiers())) {

continue;

}

Field targetField = targetFields[i];

if (Modifier.isStatic(targetField.getModifiers())) {

continue;

}

sourceField.setAccessible(true);

targetField.setAccessible(true);

try {

if (!(sourceField.get(sourceBean) == null) && !“serialVersionUID”.equals(sourceField.getName().toString())) {

targetField.set(targetBean, sourceField.get(sourceBean));

}

} catch (IllegalArgumentException | IllegalAccessException e) {

最后

权威指南-第一本Docker书

引领完成Docker的安装、部署、管理和扩展,让其经历从测试到生产的整个开发生命周期,深入了解Docker适用于什么场景。并且这本Docker的学习权威指南介绍了其组件的基础知识,然后用Docker构建容器和服务来完成各种任务:利用Docker为新项目建立测试环境,演示如何使用持续集成的工作流集成Docker,如何构建应用程序服务和平台,如何使用Docker的API,如何扩展Docker。

总共包含了:简介、安装Docker、Docker入门、使用Docker镜像和仓库、在测试中使用Docker、使用Docker构建服务、使用Fig编配Docke、使用Docker API、获得帮助和对Docker进行改进等9个章节的知识。

image

image

image

image

关于阿里内部都在强烈推荐使用的“K8S+Docker学习指南”—《深入浅出Kubernetes:理论+实战》、《权威指南-第一本Docker书》,看完之后两个字形容,爱了爱了!

[外链图片转存中…(img-upxfiErM-1714310308966)]

[外链图片转存中…(img-jRpU8CfJ-1714310308967)]

关于阿里内部都在强烈推荐使用的“K8S+Docker学习指南”—《深入浅出Kubernetes:理论+实战》、《权威指南-第一本Docker书》,看完之后两个字形容,爱了爱了!

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

  • 21
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值