java 对象属性复制,将一个对象的属性值赋值给另一个对象, 属性名需要相同

2023-10-31

java 对象属性复制,将一个对象的属性值赋值给另一个对象, 属性名需要相同

关键代码:

import org.springframework.beans.BeanUtils;

BeanUtils.copyProperties(a, b);

demo:

package com.mypackage.server.test;

import java.sql.Timestamp;
import java.text.ParseException;
import java.text.SimpleDateFormat;

import org.springframework.beans.BeanUtils;

import java.sql.Date;

public class Test {
	
	class A {
		
		private String name;
		private int age;
		private double money;
		private Date time;
		private Timestamp dateTime;
		private String remark;
		
		public A(String name, int age, double money, Date time, Timestamp dateTime, String remark) {
			super();
			this.name = name;
			this.age = age;
			this.money = money;
			this.time = time;
			this.dateTime = dateTime;
			this.remark = remark;
		}
		
		public String getName() {
			return name;
		}
		public void setName(String name) {
			this.name = name;
		}
		public int getAge() {
			return age;
		}
		public void setAge(int age) {
			this.age = age;
		}
		public double getMoney() {
			return money;
		}
		public void setMoney(double money) {
			this.money = money;
		}
		public Date getTime() {
			return time;
		}
		public void setTime(Date time) {
			this.time = time;
		}
		public Timestamp getDateTime() {
			return dateTime;
		}
		public void setDateTime(Timestamp dateTime) {
			this.dateTime = dateTime;
		}
		public String getRemark() {
			return remark;
		}
		public void setRemark(String remark) {
			this.remark = remark;
		}

		@Override
		public String toString() {
			return "A [name=" + name + ", age=" + age + ", money=" + money + ", time=" + time + ", dateTime=" + dateTime
					+ ", remark=" + remark + "]";
		}
		
	}
	
	class B {
		private String name;
		private int age;
		private double money;
		private Date time;
		private Timestamp dateTime;
		private String remarkx;
		
		public B(String name, int age, double money, Date time, Timestamp dateTime, String remarkx) {
			super();
			this.name = name;
			this.age = age;
			this.money = money;
			this.time = time;
			this.dateTime = dateTime;
			this.remarkx = remarkx;
		}
		
		public String getName() {
			return name;
		}
		public void setName(String name) {
			this.name = name;
		}
		public int getAge() {
			return age;
		}
		public void setAge(int age) {
			this.age = age;
		}
		public double getMoney() {
			return money;
		}
		public void setMoney(double money) {
			this.money = money;
		}
		public Date getTime() {
			return time;
		}
		public void setTime(Date time) {
			this.time = time;
		}
		public Timestamp getDateTime() {
			return dateTime;
		}
		public void setDateTime(Timestamp dateTime) {
			this.dateTime = dateTime;
		}
		public String getRemarkx() {
			return remarkx;
		}
		public void setRemarkx(String remarkx) {
			this.remarkx = remarkx;
		}

		@Override
		public String toString() {
			return "B [name=" + name + ", age=" + age + ", money=" + money + ", time=" + time + ", dateTime=" + dateTime
					+ ", remarkx=" + remarkx + "]";
		}
		
	}

	public static void main(String[] args) {
		
			Long time = System.currentTimeMillis();
			
			Test t = new Test();
			A a =  t.new A("佑灵",18,9000,new Date(time),new Timestamp(time),"左岭大陆");
			B b =  t.new B("灵茵茵",16,6000,new Date(time),new Timestamp(time),"星灵大陆");
			System.out.println(a.toString());
			System.out.println(b.toString());
			BeanUtils.copyProperties(a, b);
			System.out.println("A========"+a.toString());
			System.out.println("B========"+b.toString());
	}

}

输出:
A [name=佑灵, age=18, money=9000.0, time=2020-03-20, dateTime=2020-03-20 09:31:06.474, remark=左岭大陆]
B [name=灵茵茵, age=16, money=6000.0, time=2020-03-20, dateTime=2020-03-20 09:31:06.474, remarkx=星灵大陆]
A========A [name=佑灵, age=18, money=9000.0, time=2020-03-20, dateTime=2020-03-20 09:31:06.474, remark=左岭大陆]
B========B [name=佑灵, age=18, money=9000.0, time=2020-03-20, dateTime=2020-03-20 09:31:06.474, remarkx=星灵大陆]

出处:http://www.cnblogs.com/gczmn/
    
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在转载文章的页面明显位置给出原文连接,否则视为侵权,作者保留追究法律责任的权利。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

java 对象属性复制,将一个对象的属性值赋值给另一个对象, 属性名需要相同 的相关文章

  • Qt中报错error: allocation of incomplete type ‘Ui::MainXXXX‘

    Qt中报错error allocation of incomplete type Ui MainXXXX 可能原因 一 类关联问题 是你的类设计头文件源文件和ui文件的关联可能有问题 解决方案如下 原文链接 每次在Qt中单独添加UI文件的时
  • Android SharedPreferences的替代方案MMKV

    什么是MMKV MMKV 是基于 mmap 内存映射的移动端通用 key value 组件 底层序列化 反序列化使用 protobuf 实现 性能高 稳定性强 https github com Tencent MMKV 为什么要替代Shar
  • 网络攻防学习(Web基础篇)——小迪安全

    一 一些常见的基本概念 1 DNS 1 域名解析系统 2 与HOST的关系 先在本地查找HOST文件 找不到在在网上查找相同的DNS 2 CDN 1 内容分发网络 目的是让用户能够更快的得到请求的数据 简单来说就是用来加速的 他是一个就近访
  • 线程是如何通讯的?

    线程通讯指的是多个线程之间通过共享内存或消息传递等方式来协调和同步它们的执行 在多线程编程中 通常会出现多个线程需要共同完成某个任务的情况 这时就需要线程之间进行通讯 以保证任务能够顺利地执行 线程通讯的实现方式主要有以下两种 共享内存 多
  • substring从指定字符串开始截取

    String filename F workspace ssh photo WebContent uploadFile 1444783552338pic jpg int begin filename indexOf ssh photo in
  • CCF计算机软件能力认证历年真题+超详细解析(C语言)

    这个历年试题解主要使用C语言编写 针对较为简单的第一题和第二题 适合初学者 程序中基本附有注释 希望可以帮到大家 会持续进行补充 欢迎评论区给出更好的解法与思路 2021 12 第 24次 202112 1序列查询 202112 2序列查询
  • 两个集合相等的例题_集合间的基本关系,你懂了吗?

    集合间的基本关系 在集合间的基本关系这一部分 首先要了解什么是子集 什么是真子集什么是集合相等 什么是空集 子集 一般的对于两个集合AB如果集合A中任意一个元素都是集合B中的元素 我们就说这两个集合有包含关系 称集合A为集合B的子集 记作A
  • 运算符

    运算符包括赋值运算符 算术运算符 逻辑运算符 位逻辑运算符 位移运算符 关系运算符 自增自减运算符 大多数运算符都是二目运算符 即运算符位于两个表达式之间 单目运算符的意思是运算符作用于单个表达式 一 赋值运算符 赋值语句的作用是把某个常量
  • 在C/C++代码中使用SSE等指令集的指令(5)SSE进行加法运算简单的性能测试

    下面是一个简单的测试SSE指令性能的程序 可以看到明显的性能提升 说明 程序中的timing h使用的是http blog csdn net gengshenghong article details 6973086中介绍的时间间隔获取方法
  • 关于特征值分解后续

    已经尝试将double型数据写成的特征值分解模块用在盲源分离的工程中 由于精度的问题 在频率较低的情况下可以分解成功 但是一旦频率过高 分解出的三路信号频率在一个位置 不满足要求 接下来准备看一下关于SVD分解运用在fpga中的文章 希望在
  • 在设计软件测试用例的原则,设计软件测试用例需要遵循的四条原则

    测试 由于成本因素的介入 决定了工程中设计好的测试用例原则不只有 覆盖住所要测试的功能 这一条 下面是我根据自己的工作经验总结出的其它四条原则 在这里抛砖引玉 希望大家拍砖和指正 这些原则特别是针对那些需要被自动化 并且是要被经常执行的测试
  • node js 路由模糊匹配_我们为什么需要Node中间层

    首先跳出前端 要看清node中间层在整个服务承担什么角色 首先我们要跳出前端的视野 把自己视角提示一个level 去鸟瞰整个项目 互联网时代其实就是信息时代 我们都是在利用数据交换 来产生价值 一个最简单的数据流 前端 gt 后端 gt 数
  • mysql基础知识点回顾(精简,不包含存储过程等)

    数据库的基础知识 数据分类 结构化数据 能够使用统一的结构表示的数据 如数字 字符等 半结构化数据 介于完全结构化和完全无结构化之间 如xml和html等 非机构化数据 长度可变 不能使用统一的结构表示的数据 如图像 音频 数据库的分类 关
  • 用Python实现简单登录注册小程序

    判断文件是否存在 pi 1 while pi lt 2 try a open mima a close except a open mima w a close else pi 3 a open mima r str 1 for line
  • 网卡获取ip地址失败

    linux redhat虚拟机上网卡获取ip地址失败 网卡设置为自动获取ip的 重启network服务提示如下信息 Bringing up interface eth0 RTNETLINK answers No such device 查看
  • android O以后版本 自定义Notification

    最近在使用通知的时候 发现方法执行后 没有弹出通知 而是提示下面的错误 Developer warning for package com example test Failed to post notification on channe
  • HTTP和SOAP完全就是两个不同的协议

    HTTP和SOAP完全就是两个不同的协议 HTTP只负责把数据传送过去 不会管这个数据是XML HTML 图片 文本文件或者别的什么 而SOAP协议则定义了怎么把一个对象变成XML文本 在远程如何调用等 怎么能够混为一谈 这样说两种协议 H
  • 【Eviews】异方差的检验(图示检验法、white检验法、GQ检验法)与修正(加权最小二乘法)

    异方差 模型中随机扰动项的方差 随 解释变量 的变动而变动 异方差的检验 图示法 先对y x做线性回归 这样才能产生残差resid GQ检验法 切记 先对解释变量x排序 一般是按照升序 再截断样本 取一头一尾 计算残差平方和 构造F检验 得
  • 三数论大小(引用)

    题目描述 输入三个整数 然后按照从大到小的顺序输出数值 要求 定义一个函数 无返回值 函数参数是三个整数参数的引用 例如int a int b int c 在函数内通过引用方法来对三个参数进行排序 主函数调用这个函数进行排序 要求 不能直接
  • 网络爬虫数据解析的四种方式之XPath

    文章目录 前言 四种数据解析方式 数据解析之XPath XPath介绍 在浏览器中安装XPath helper插件 XPath使用方法 通过浏览器测试插件是否安装成功 通过python代码实现用XPath来解析数据 前言 快期末了 有个数据

随机推荐

  • Linux学习之VMware虚拟机安装

    前言 今天是癸卯年正月十五元宵节 在此祝大家元宵快乐 这篇文章主要给大家介绍安装VMware虚拟机的步骤 话不多说 开始安装 安装准备 VWware workstation rhel 8 2 x86 64 dvd iso 64 位操作系统
  • Bash 脚本

    什么是 Bash 简介 Bash GNU Bourne Again Shell 是一个为 GNU 计划编写的 Unix shell 它是许多 Linux 平台默认使用的 shell shell 是一个命令解释器 是介于操作系统内核与用户之间
  • 广度优先搜索(邻接矩阵)

    广度优先搜索 邻接矩阵 1 1一 用数组来存放顶点 vexs 0 A vexs 1 B vexs 2 C vexs 3 D vexs 4 E vexs 5 F vexs 6 G vexs 7 H vexs 8 I 1 2 用邻接矩阵来表示边
  • webrtc 看不到对方画面是什么原因_WebRTC 细节探究

    探究 从了解到理解 从理解到看见 写在前面 WebRTC 的使用并不复杂 可是其中的流程细节还是挺值的深挖的 每个人脑回路不一样 感到困惑的点可能也不一样 这篇主要讲了Signaling这个过程的一些小细节 如果有错欢迎指出一起讨论 深究
  • Windows系统配置maven环境

    windows安装maven 我们为什么要配置maven呢 Maven是统一集中管理好所有的依赖包 不需要程序员再去寻找 Maven项目会有一个 pom xml文件 在这个文件里面 只要你添加相应配置 他就会自动帮你下载相应jar包 不用你
  • 4.5 服务器上的 Git - Git 守护进程

    4 5 服务器上的 Git Git 守护进程 版本说明 版本 作者 日期 备注 0 1 loon 2019 3 25 初稿 目录 文章目录 4 5 服务器上的 Git Git 守护进程 版本说明 目录 Git 守护进程 Git 守护进程 接
  • redis订阅发布介绍

    redis订阅发布 redis发布订阅 pub sub 是一种消息通信模式 订阅者 pub 发送消息 订阅者 sub 接受消息 比如生活中的微信订阅公众号 微博关注账号 redis客户端可以订阅任意数量的频道 这分为三个部分 消息发送者 频
  • 基于人工智能算法实现AI足球比赛

    相关资料 http t csdn cn 1XSne 实现目标 目前进展 主要用到就是射门概率那块 用随机数 能力值来控制 include
  • 周志华《Machine Learning》学习笔记(9)--EM算法

    上篇主要介绍了贝叶斯分类器 从贝叶斯公式到贝叶斯决策论 再到通过极大似然法估计类条件概率 贝叶斯分类器的训练就是参数估计的过程 朴素贝叶斯则是 属性条件独立性假设 下的特例 它避免了假设属性联合分布过于经验性和训练集不足引起参数估计较大偏差
  • firefly架构说明

    Firefly是免费 开源 稳定 快速扩展 能 热更新 的分布式游戏服务器端框架 采用Python编写 基于Twisted框架开发 它包括了开发框架和数据库缓存服务等各种游戏服务器基础服务 节省大量游戏开发的工作时间 真正做到让使用者把精力
  • 线性时间内从一个数组中找出第K个最小的元素——编程珠玑

    线性时间内从一个数组中找出第K个最小的元素 编程珠玑 题目 编写程序 在O n 时间内从数组x 0 n 1 中找出第k个最小的元素 算法中可以对x中的元素进行排序 思路 快速排序选择一个pivot对数组进行划分 左边小于pivot 右边大于
  • easyExcel 填写导出转换日期格式

    在使用easyExcel 填写导出的时候 遇到Date类型的字段填写在excel 显示的单元格的格式为自定义格式 原本该单元格格式设置了边框 居中 填写导出后的居然没有加边框 也没有居中 按照源码 写上一个Date转换类 实现Convert
  • 了解Spring的变迁从Spring3到Spring5

    随着互联网技术的发展 Spring也在不断的进化 从最早轻量级的支持J2EE到现在对高并发 多线程异步程序的支持 spring也不断的更新自己走在技术的最前沿 我们先来从Spring3开始看看spring的发展变迁 Spring3 Spri
  • java 控制 区域投屏,Scrcpy投屏原理浅析-设备控制篇

    起初我真的想过自己单独写一套来着 后来发现时间真的不够 所以有了对scrcpy源码的浅析 服务端我就用scrcpy现有的了 客户端scrcpy采用ffmpeg sdl2 0进行了跨平台的播放 我准备用Flutter重构客户端部分 Scrcp
  • SVN客户端安装及使用说明

    SVN客户端安装及使用说明 一 SVN客户端与语言包的安装 1 下载TortoiseSVN 2 安装TortoiseSVN 双击安装包 进入下一步 如图 3 点击Next 进入下一步 如图 4 选择接受 然后点击Next 进入下一步 如图
  • Python中逗号的三种作用

    最近研究python 遇到个逗号的问题 一直没弄明白 今天总算搞清楚了 1 逗号在参数传递中的使用 这种情况不多说 没有什么不解的地方 就是形参或者实参传递的时候参数之间的逗号 例如def abc a b 或者abc 1 2 2 逗号在类型
  • Python学习笔记(五)—LOOP 循环

    个人认为Python基础学习直到LOOP才算真正开始 循环有While do while 和for 比如while 我们要输出100条 you are my sunshine 可以表达如下 count 0 while count lt 10
  • opencv 打开1080P等高分辨率摄像头时卡顿问题的解决

    参考 blog csdn net lunweiwangxi3 article details 88556911 http blog sina com cn s blog 9b493e7b0102xvn6 html 总结http stacko
  • SRCNN以DIV2K数据集进行训练时,.h5文件、PSNR评价指标、运行结果

    由于是从Word文档直接复制过来 其中格式如果乱码或者不通顺 请评论区告知我 1 对于 h5文件的大小计算 输入图片后 由于大小不同 无法从图片直接计算 但整合后数组有两个 一个arrlabel 一个arrdata 1 其中 arrlabe
  • java 对象属性复制,将一个对象的属性值赋值给另一个对象, 属性名需要相同

    java 对象属性复制 将一个对象的属性值赋值给另一个对象 属性名需要相同 关键代码 import org springframework beans BeanUtils BeanUtils copyProperties a b demo