本文主要是介绍不同java类,相同属性赋值,不逐一set,偷懒必备,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
场景
我们通常在插入一张表的时候会关联另外一张表,所以会同事插入两张表,对应的是不同的两个实体类,不同的service,一个一个set过于麻烦,他们存在一定相同的属性,利用
BeanUtils.copyProperties(gyggZd, gyzd);
第一个是你得到值的对象,第二个是你要赋过去的对象
他们对象的属性如下
得到的值gyggZd对象
public class GyggZd {/*** 公告宗地GUID**/private String gyggZdGuid;/*** '供应公告GUID'**/private String gyggGuid;/*** '宗地GUID'**/private String zdGuid;/*** '宗地编号'**/private String zdBh;/*** '面积'**/private BigDecimal mj;
}
赋值的gyzd对象
public class TdGyzd {/*** 宗地主键*/private String zdGuid;/*** 行政区划*/private String xzqDm;/*** 乡镇名称*/private String xzMc;/*** 宗地编号*/private String zdBh;/*** 面积*/private BigDecimal mj;
}
他们存在一部分相同一部分不相同,利用 BeanUtils.copyProperties 可以将相同的属性,并且不为null的属性值copy过去。
具体代码实现
......if (StringUtils.isEmpty(gyggZd.getGyggGuid())) {/*新增宗地*/gyggZd.setGyggGuid(UUID.randomUUID().toString());/*添加外键表内容*/TdGyzd gyzd = new TdGyzd();BeanUtils.copyProperties(gyggZd, gyzd);tdGyzdService.saveGyzd(gyzd);j = gyggZdDao.insert(gyggZd);}
......
这篇关于不同java类,相同属性赋值,不逐一set,偷懒必备的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!