You'll need one query with 3 result maps. The result maps will be chained together with collection properties using the resultMap attribute.
<resultMap id="Child"> ... <resultMap id="Parent"> <result ... resultMap="Child"/> ... <resultMap id="GrandParent"> <result ... resultMap="Parent"/> ... <select ... resultMap="GrandParent"> ... The select statement should join the tables together and you may need to be very explicit with the column names. Clinton On 2/19/07, Brad Handy <[EMAIL PROTECTED]> wrote:
I have a table which has all of the parent/child relationships in the same table. I would like to avoid the N+1 selects with this construct, but it's unclear from the documentation if this can be done. Let's say I have the following relationships defined in the table: Grand Parent Parent 1 Child 1 Child 2 Parent 2 Parent 3 Child 3 Child 4 When creating the child objects for "Grand Parent", will the same "Parent*" objects be used to add the children "Child*" objects to the appropriate parents? Brad