Hi, Given parent table : ORDER_ITEMS related to child table : ITEM_SHIPMENT by two keys ORDER_ID and ORDER_LINE_ID (both the keys are required to establish a precise parent-child relation) if we want to get a list of child table a store in a parent object in iBatis, we do : <resultMap id="parent" class="Parent" groupBy="parentId">
But in this case, we have 2 keys, so I do not know how to do it. Can groupBy be mapped to another class that can have both these keys as members ?
Hi aditee, It seems you are facing N+1 problem in iBatis...Which is fully solvable Below code snipet will solve your problem This is from iBatis Developer guide
myList is a List of beans containing type "com.ibatis.example.Category". Each object in that List will have a "productList" property that is also a List populated from the same query, but using the "productResult" result map to populate the beans in the child list. So, you end up with a list containing sub-lists, and only one database query is executed and both child and parent list are get popultaed as expected..