BeanUtils.copyProperties的用法

2023-11-16

BeanUtils.copyProperties的用法

BeanUtils.copyProperties(a, b);

首先BeanUtils有2个包:

  1. org.springframework.beans.BeanUtils

这个包 是a,b为对象,BeanUtils.copyProperties(a, b);

a拷贝到b b的属性 a一定要有,a可以有b没有的属性


  1. org.apache.commons.beanutils.BeanUtils

    这个则是b拷到a a的属性 b一定要有,b可以有a没有的属性

使用情景(Spring 框架下的org.springframework.beans.BeanUtils为例)


BeanUtils它提供了对java反射和自省API的包装。它里面还有很多工具类,

一般当我们有两个具有很多相同属性的JavaBean实体类时,一个很常见的情况就是Struts里的PO对象(持久对象)和对应的ActionForm

传统的方式对属性逐个赋值:依次的进行set,get但是这样的赋值方式,是非常麻烦的,而且重复代码量可以会很多,很冗余。

而这时我们就可以使用BeanUtils.copyProperties()方法

并且用起来很方便,一行代码就可以搞定,简单明了:

BeanUtils.copyProperties(Object source, Object target); 
=> BeanUtils.copyProperties("转换前的类", "转换后的类");

注意


BeanUtils.copyProperties(a, b);

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

BeanUtils.copyProperties的用法 的相关文章

随机推荐

  • PLC接线详解

    PLC常见的输入设备有按钮 行程开关 接近开关 转换开关 拨码器 各种传感器等 输出设备有继电器 接触器 电磁阀等 想学好电气 必须先学会接线 如果线都接不好的话 设备出现问题时 依然是无从下手 正确地连接输入和输出线路 是保证PLC可靠工
  • 射频电路学习之LC振荡电路

    文章目录 前言 一 串联谐振电路 二 并联谐振电路 三 谐振电路的本质 总结 前言 谐振是指 当外力作用的频率与系统固有的振荡频率相同或非常接近时 振幅急剧增大的现象 其中产生谐振时的频率成为谐振频率 谐振是正弦电路中的一种特殊现象 回路也
  • IBM DISK queue_depth参数调整

    queue depth参数会影响disk i o性能 特别是在数据库等i o密集性应用中 适当调整设置此参数 会提高整体应用的性能 下面是在AIX 5 3 IBM ds4300上调整此参数的 步骤及注意事项 记录一下 下面物理磁盘hdisk
  • Windows 11 提升软件打开速度

    设置 gt 辅助功能 gt 视觉效果 gt 动画效果 关闭 设置 gt 辅助功能 gt 视觉效果 gt 透明效果 关闭 设置 gt 应用 gt 启动 都关闭
  • 08-wait 和 sleep 的区别

    1 源码 sleep public class Thread implements Runnable public static native void sleep long var0 throws InterruptedException
  • Qt实现图像自适应窗口大小之scaled()函数使用

    很多应用都需要显示图片 比如视频类应用 拍照类应用 但是在大数情况下用户都会改变窗口大小 以获得最佳效果 在Qt中如果只设置了显示图片而没有对自适应窗口做出设置 用户拖拽边框的时候 整个控件上就会出现大片空白部分 怎么解决这个问题呢 QIm
  • Python基础(四):Python函数和模块的讲解和应用

    一 前言 山东省小学已将Python内容纳入教材 江省已将信息技术教材VB编程语言替换为Python 计算机二级考试加入 Python语言程序设计 科目 越来越多的岗位也需要Python技能 Python连续4年成功登顶最流行的编程语言榜单
  • Git安装以及基本配置

    提示 文章写完后 目录可以自动生成 如何生成可参考右边的帮助文档 提示 以下是本篇文章正文内容 下面案例可供参考 一 Git安装以及配置 git官网 https git scm com downloads 选择适合的版本进入下载 然后傻瓜式
  • 两个数组去重!

    var a1 1 2 3 4 5 var b1 1 2 var c1 a1 filter a gt return b1 some c gt c a 两个数组可快速对比去重
  • crontab日志包命令找不到和乱码问题

    crontab设置的定时任务 执行脚本报错命令找不到和乱码 使用crontab时的运行环境已经不是用户环境了 因此原本用户下的一些环境变量的设 置就失效了 因为我的命令path设置到了 etc profile里了 所以在crontab运行不
  • 【Flutter 1-8】Flutter教程Dart语言——控制语句

    控制语句 Dart语言的控制语句跟其他常见语言的控制语句是一样的 基本如下 if 和 else for 循环 while 和 do while 循环 break 和 continue switch 和 case assert If 和 El
  • centos 6.6 编译安装PHP7.0.5

    PHP7 0正式版也出来了 今天编译安装了一下 写下安装步骤 我是在centos6 6 环境中编译的 如下 下载地址http cn2 php net distributions php 7 0 5 tar gz 安装编译所需的包 如遇见部分
  • ListView 的position不正确的时如何处理

    当给ListView加了一个HeaderView后 代码如下 我们发现 onItemClick方法里的position参数的值不是我们所期望的 比如点击ListView的第一行 我们期望的position是0 可是实际上却是1 也就是说 它
  • OAuth2实现单点登录SSO完整教程,其实不难!

    点击上方 Java基基 选择 设为星标 做积极的人 而不是积极废人 源码精品专栏 原创 Java 2020 超神之路 很肝 中文详细注释的开源项目 RPC 框架 Dubbo 源码解析 网络应用框架 Netty 源码解析 消息中间件 Rock
  • vovnet 测试

    vovnet39 1070 640 640 batch 1 15ms 自己改了参数 import time import torch import torch nn as nn import torch nn functional as F
  • Jvm实际运行情况-JVM(十七)

    上篇文章说jmap和jstat的命令 如何查看youngGc和FullGc耗时和次数 Jmap JVM 十六 Jvm实际运行情况 背景 机器配置 2核4G JVM内存大小 2G 系统运行天数 7天 期间发生FULL GC次数和耗时 500多
  • JS数组reduce()方法详解

    reduce 方法接收一个函数作为累加器 数组中的每个值 从左到右 开始缩减 最终计算为一个值 reduce 可以作为一个高阶函数 用于函数的 compose 注意 reduce 对于空数组是不会执行回调函数的 首先我们看一下参数initi
  • 期货开户交易贵在坚持

    期货人生之一 交易贵在坚持 水滴石穿虽然平日看起来不起眼 但随着岁月的流逝 小流也将汇集成复利的海洋 因为只有时间才是真正成就复利可怕的力量 即使一生做的再成功 也并不能说明什么问题 只能说明我坚持了交易的原则 仅此而已 失去原则 我将一文
  • json应用场景与实战

    1 php中的json简介 首先我们说json是一种简便的轻量级的数据交换格式 能够在吴福气之间交换数据 json起源 1 标量 2 序列 3 映射 2 怎样使用json JSON的基本语法 JSON的四个基本规则 1 并列的数据之间用逗号
  • BeanUtils.copyProperties的用法

    BeanUtils copyProperties的用法 BeanUtils copyProperties a b 首先BeanUtils有2个包 org springframework beans BeanUtils 这个包 是a b为对象