2012-06-08 68 views
0

我對struts和java比較陌生。我一直在試圖理解下面的一段代碼。瞭解特定代碼的功能概念

List<LabelValueBean> dbList = getCardProductList(); 

    ConcurrentMap<Integer, ProductItem> ret = new ConcurrentHashMap<Integer, ProductItem>(); 
    for (LabelValueBean lb : dbList) { 
     ProductItem pi = new ProductItem(); 
     pi.setId(Integer.valueOf(lb.getId())); 
     pi.setCode(lb.getCode()); 
     pi.setName(lb.getDescription()); 

     LabelValueBeanAuxCol[] aux = lb.getLabelvaluebeanauxcol(); 
     pi.setTypeProduct(Boolean.TRUE); 

     if (null != aux) { 
      for (LabelValueBeanAuxCol element : aux) { 
       if (null != element 
         && "PRDCT_SVC_IND".equals(element.getName())) { 
        pi.setTypeProduct(Boolean.valueOf("Y".equals(element 
          .getValue()))); 
       } 
      } 
     } 
     pi.setNeedSetup(Boolean.TRUE); 
     ret.put(pi.getId(), pi); 
    } 
    return Himms2LookupUtil 
      .<ConcurrentMap<Integer, ProductItem>> setValueInCache(
        Himms2Names.CARD_SERVICE_PRODUCT_LIST, ret); 
} 

隨着repect圍繞「PRDCT_SVC_IND」,代碼塊如何將列的名稱映射到LabelValueBean類?
儘管我對併發地圖和關鍵值對功能有了一個想法,但我對這裏的大多數概念還是很不確定,並且試圖在互聯網上搜索而沒有多少運氣。我希望能夠更清楚地瞭解上述各行的實際意義(通常是課程),就像這裏使用的概念一樣,這些概念包括同時出現的圖,列表(labelvaluebean)等。 任何輸入都將不勝感激。

+0

我不確定你後什麼樣的信息;噸代碼基本上是填充由其ID標識的產品項目的地圖,然後可能將其存儲在某種緩存中。 –

+1

需要問卷調查者更清楚 –

回答

1

代碼是做以下操作: -

1)獲得在CardProductList第一線,並在DBLIST對象存儲爲

List<LabelValueBean> dbList = getCardProductList();` 

2參考)創建的密鑰值ConcurrentMap。

3)開始迭代CardProductList每個CardProductList對象執行以下操作 -

a) Crates ProductItem object. 
b) setting CardProduct object values (id, code, name) into ProductItem object. 
d) setting ProductItem.typeProduct to TRUE. 
c) getting Labelvaluebeanauxcol and store it in a LabelValueBeanAuxCol[] array instance called aux. 
d) now check if aux is not null then iterates aux array and checks if(elemet is not null AND element name IS EQUAL TO "PRDCT_SVC_IND" 
    THEN 
     set ProductItem.TypeProduct to True if element.value = Y 
     ELSE 
     set ProductItem.TypeProduct to FALE 
e) set ProductItem.NeddSetup = TRUE 
f) set ProductItem.id and ProductItem into ConcurrentMap. 

4)店鋪ConcurrentMap緩存