当前位置: 首页 > news >正文

关于网站建设的问卷调查链接制作

关于网站建设的问卷调查,链接制作,做旅游网站挣钱吗,如何用dw制作网页框架BeanUtil.copyProperties的优化与使用 前言一、copyProperties是什么?二、使用步骤1.引入库2.基础使用3.进阶使用4.实用场景 总结 前言 BeanUtil.copyProperties的优化与使用 一、copyProperties是什么? 在java中,我们想要将一个类的值赋值…

BeanUtil.copyProperties的优化与使用

  • 前言
  • 一、copyProperties是什么?
  • 二、使用步骤
    • 1.引入库
    • 2.基础使用
    • 3.进阶使用
    • 4.实用场景
  • 总结


前言

BeanUtil.copyProperties的优化与使用


一、copyProperties是什么?

在java中,我们想要将一个类的值赋值给另一个类,那么就需要使用到copyProperties函数,例如BeanUtil.copyProperties(Object source, Object target)。

二、使用步骤

1.引入库

引入如下对应工具类:

//这里引入的是5.3.1版本hutool工具类<dependency><groupId>cn.hutool</groupId><artifactId>hutool-all</artifactId><version>5.3.1</version></dependency>
//在代码中注入地址
import cn.hutool.core.bean.BeanUtil;

2.基础使用

将A中一样的字段值复制给B:

Student studentA = new Student();
Student studentB = new Student();
//将A的值赋值给B
BeanUtil.copyProperties(studentA,studentB);

3.进阶使用

我们点入hutool源码,可以看到支持第三个参数填写:

	/*** 复制Bean对象属性<br>* 限制类用于限制拷贝的属性,例如一个类我只想复制其父类的一些属性,就可以将editable设置为父类** @param source           源Bean对象* @param target           目标Bean对象* @param ignoreProperties 不拷贝的的属性列表*/public static void copyProperties(Object source, Object target, String... ignoreProperties) {copyProperties(source, target, CopyOptions.create().setIgnoreProperties(ignoreProperties));}

因此可以看出,我们可以自定义不copy的字段名,例如:我不想把A中的name值赋值给B 可以按照如下写:

Student studentA = new Student();
Student studentB = new Student();
String[] strArray = new String[1];
strArray[0] = "name"; 
//将A的值赋值给B
BeanUtil.copyProperties(studentA,studentB,strArray);

4.实用场景

在业务中,比较实用的是不将对象中的null值进行覆盖,可以使用以下支持函数

    /*** 解决BeanUtils.copyProperties() 的 null值覆盖问题(基本类型的0 0.0)* @param source* @return*/public static String[] getNullPropertyNames (Object source) {final BeanWrapper src = new BeanWrapperImpl(source);PropertyDescriptor[] pds = src.getPropertyDescriptors();Set<String> emptyNames = new HashSet<String>();for(PropertyDescriptor pd : pds) {Object srcValue = src.getPropertyValue(pd.getName());if (srcValue == null || Objects.equals(srcValue,0) || Objects.equals(srcValue,0.0)) emptyNames.add(pd.getName());}String[] result = new String[emptyNames.size()];return emptyNames.toArray(result);}
Student studentA = new Student();
Student studentB = new Student();
//studentA中的null值不进行赋值
BeanUtil.copyProperties(studentA,studentB,getNullPropertyNames(studentA));

总结

欢迎讨论。

http://www.bjxfkj.com.cn/article/102840.html

相关文章:

  • 江苏网站开发建设百度app下载
  • 做网站需要多钱seo排名优化资源
  • 网站制作教程切片上海排名优化seobwyseo
  • 茶叶网站建设一般的风格网络销售是干嘛的
  • 商务网站建设实训报告总结地推平台去哪里找
  • 广东省建设监理协会网站 - 首页青岛谷歌推广
  • 免费公司注册搜索关键词排名优化
  • 做网站建设费用淘宝直通车推广怎么收费
  • 劳务公司网站建设方案百度排行榜风云榜
  • 和县网站建设网站seo培训
  • 怎样做网站404上海企业推广
  • 电脑网站你懂我意思正能量百度广告屏蔽
  • 做电玩城设计的网站百度地图打车客服人工电话
  • excel+表格+做的网站西安关键词优化服务
  • 野外美食网站设计欣赏2345网址导航官网官方电脑版下载
  • 鞍山公司网站建设今日时事新闻
  • wordpress pjax企业seo网络推广
  • 西安 做网站百度官方推广平台
  • wordpress对网站排名怎样建立自己的网站平台
  • 时时彩网站做号优化网站界面的工具
  • 程序员给女朋友做的网站全国疫情排行榜
  • 做网站用小型机或服务器英语培训
  • 岳阳网站优化开发一个app需要多少钱?
  • 招聘类网站该怎么做苏州seo服务热线
  • 盘锦网站建设 盘锦建站推广 盘锦建站网站建设价格
  • 八步网站建设itme收录优美图片官网
  • js获取网站广告点击量怎么做新网站快速排名软件
  • 临沂网站建设培训怎样搭建网站
  • 黄冈网站建设 网络推广seo资源是什么意思
  • 有没有装修做团购的网站全球网站排名前100