ibatis-user-java mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Clinton Begin" <clinton.be...@gmail.com>
Subject Re: Avoiding N+1 Selects
Date Tue, 20 Feb 2007 02:34:44 GMT
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 <brad.handy@gmail.com> 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
>

Mime
View raw message