通过A中的一个字段code去查数据放到了List(B)
List<B> listB= new ArrayList<ClinicDrugDirMaint>();
for(A a:ListA){
ListB=Dao.findList(a.getCode());
}
现在listA中的name的值需要赋给ListB中的name。
怎么实现?
listA中有很多组数据。
5 个解决方案
#1
#2
实体里的一般叫属性,你这是要从list里面获取每一个code然后取查数据库还是怎么样?你这问题描述的一点都不清晰
如果是查数据库的话,可以使用in操作查询出数据然后放到listb中;如果不是,通过循环即可做到
如果是查数据库的话,可以使用in操作查询出数据然后放到listb中;如果不是,通过循环即可做到
#3
这样?
还是说需要反射来获取A实体类的属性值
b.setName(a.getName());
还是说需要反射来获取A实体类的属性值
#4
List<B> listB= new ArrayList<ClinicDrugDirMaint>();
for(A a:ListA){
ListB=Dao.findList(a.getCode());
}
写成:
List<B> listB= new ArrayList<ClinicDrugDirMaint>();
for(A a:ListA){
ListB=Dao.findList(a.getCode());
if(ListB.size()>0){
for(B entity : ListB){
entity.setName(a.getName);
}
}
}
这可能是你想要的。但是效率差。
我建议你的Dao.findList(a.getCode()); 不要在循环里写。多次访问数据库。
可以把code 变成codes 返回结果为一个Map<String,List<B>> key 都是你的code 一次访问数据库。
然后在遍历map
for(A a:ListA){
ListB=Dao.findList(a.getCode());
}
写成:
List<B> listB= new ArrayList<ClinicDrugDirMaint>();
for(A a:ListA){
ListB=Dao.findList(a.getCode());
if(ListB.size()>0){
for(B entity : ListB){
entity.setName(a.getName);
}
}
}
这可能是你想要的。但是效率差。
我建议你的Dao.findList(a.getCode()); 不要在循环里写。多次访问数据库。
可以把code 变成codes 返回结果为一个Map<String,List<B>> key 都是你的code 一次访问数据库。
然后在遍历map
#5
同意4楼的方法,在循环里面查询数据库会被项目经理骂的。
#1
#2
实体里的一般叫属性,你这是要从list里面获取每一个code然后取查数据库还是怎么样?你这问题描述的一点都不清晰
如果是查数据库的话,可以使用in操作查询出数据然后放到listb中;如果不是,通过循环即可做到
如果是查数据库的话,可以使用in操作查询出数据然后放到listb中;如果不是,通过循环即可做到
#3
这样?
还是说需要反射来获取A实体类的属性值
b.setName(a.getName());
还是说需要反射来获取A实体类的属性值
#4
List<B> listB= new ArrayList<ClinicDrugDirMaint>();
for(A a:ListA){
ListB=Dao.findList(a.getCode());
}
写成:
List<B> listB= new ArrayList<ClinicDrugDirMaint>();
for(A a:ListA){
ListB=Dao.findList(a.getCode());
if(ListB.size()>0){
for(B entity : ListB){
entity.setName(a.getName);
}
}
}
这可能是你想要的。但是效率差。
我建议你的Dao.findList(a.getCode()); 不要在循环里写。多次访问数据库。
可以把code 变成codes 返回结果为一个Map<String,List<B>> key 都是你的code 一次访问数据库。
然后在遍历map
for(A a:ListA){
ListB=Dao.findList(a.getCode());
}
写成:
List<B> listB= new ArrayList<ClinicDrugDirMaint>();
for(A a:ListA){
ListB=Dao.findList(a.getCode());
if(ListB.size()>0){
for(B entity : ListB){
entity.setName(a.getName);
}
}
}
这可能是你想要的。但是效率差。
我建议你的Dao.findList(a.getCode()); 不要在循环里写。多次访问数据库。
可以把code 变成codes 返回结果为一个Map<String,List<B>> key 都是你的code 一次访问数据库。
然后在遍历map
#5
同意4楼的方法,在循环里面查询数据库会被项目经理骂的。