2012-08-26 3 views
0

나는 "orderHistory"라는 빈을 가지고 있는데 그것은 "order"리스트를 가지고 있고 order는 "orderitem"리스트를 가지고있다. 주문 항목 목록에 2 개의 소품 "orederitemno"가 있습니다. 이제 반복합니다. "orederitemno"를 가져 와서 "orederitemnolist"목록에 넣습니다.자바에서이 맵 반복을 어떻게 할 수 있습니까?

OrderHistory-> Order-> OrderItem -> "orederitemno" 별도의 목록 ... PFB 내가 사용하고있는 코드, 이제

List<String> itemNos = new ArrayList<String>(); 
for (Order order : orderHistory.getOrders()) { 
    for (OrderItem item : order.getItems()) { 
     itemNos.add(item.getItemNo()); 
    } 
} 

내가 나에게 itemcodes와지도를 반환하는 방법이 목록을 통과하고, 이제

Map itemCodeMap = Myutil.getItemCodes(itemNos);

방법을 반복하는 이지도와 전자에 대한 itemcode 넣어 OrderHistory bean의 ach orderItem ??? 위의 루프를 다시 한 번 사용해야합니까? 이 작업을 수행 할 수있는 방법을 어떤 제안 ...

참고 난 .. 맵을 반복 각 주문 항목에 대한 코드를 설정하는 방법 ... OrderItem에 클래스에 itemcode에 대한 게터 세터를 추가 한

답변

1

이제이지도를 반복하고 각 OrderItem에 대한 itemcode를 OrderHistory bean에 넣는 방법 ???? 위의 루프를 다시 한 번 사용해야합니까? 이 작업을 수행 할 수있는 방법을 어떤 제안 ...

그래, 바로 메소드 이름에서 추측을 사용하여 다시 같은 루프를 수행

List<String> itemNos = new ArrayList<String>(); 
for (Order order : orderHistory.getOrders()) { 
    for (OrderItem item : order.getItems()) { 
     ItemCode code = (ItemCode)itemCodeMap.get(item.getItemNo()); 
     if(code!=null) { 
      item.setItemCode(code); 
     } 
    } 
} 
+0

내가 그 시도 것이다 ... – coderman

관련 문제