原理:
Map<Integer,String> mindex = new HashMap<Integer, String>();
mindex的值为:{0=erpReferenceNo, 1=proClass, 2=title,3=title, 4=year, 5=title, 6=content,
7=size, 8=weight,9=packaging, 10=replica, 11=title, 12=channel, 13=property1,
14=property2,15=property3, 17=property5, 16=property4}
//for循环key对应的值,即:erpReferenceNo proClass 。。。。等
for (String m :mindex.values()) {
Set<Integer> keySet = mindex.keySet();
for (Integer key : keySet){
String value = mindex.get(key); //理解看解释
if (value.equals(m)) {//理解看解释
bm.put(mindex.get(key),getValue(hssfRow.getCell(key)));//理解看解释
}
}
}
//理解:假设运行到红色2这一行数据 一行就是一个ProductInfoEntity对象
ProductInfoEntity的属性即为mindex key所对应的值。因而for循环都得给这几个属性赋值。
bm.put(“对象的属性”,属性的值)
所以想办法把标识为红色2哪行的数据 作为值,而erpReferenceNoproClass 。。。。等作为key
思路:1.遍历mindex.values() 假设为erpReferenceNo
2.假设读取红色标识为2那行数据 拿这一行的单元格标识即:01 2 。。。到这一行有几个单元格 假设刚好为0,即第一个单元格的标识为key从mindex中取到的值与m的值匹配
3. bm.put(“对象的属性”,属性的值)