if (qrCdBackupPacks.size() > 0) {
for (QrCdBackupPack q : qrCdBackupPacks) {
TranDetailReport t = new TranDetailReport();
// BeanCopier beanCopier = BeanCopier.create(q.getClass(), t.getClass(), false);
// beanCopier.copy(q,t,null);
BeanUtils.copyProperties(q, t);
String key = q.getCorpId()+"-"+q.getTxnType();
t.setMerchantName(opidMap.containsKey(key)?opidMap.get(key).getOpName():q.getCorpId());
t.setAppName(appsMap.getOrDefault(t.getAppId(),t.getAppId()));
list.add(t);
}
q, t 分别是二个实体类对象的对象名称
这里是把q实体类表的查询出来的 list 集合每个属性值copy给对应t实体类表 对应的属性字段上面,
这里是二种的copy的方式 第一种: BeanUtils.copyProperties(q, t);
第二种:
// BeanCopier beanCopier = BeanCopier.create(q.getClass(), t.getClass(), false);
// beanCopier.copy(q,t,null);
好像数据量特别多的时候 第二种效率要快点!!! 大家实践一下 我就记录一下 我感觉有坑
这个copy赋值主要是用于减少代码实体类里面 get set!!!