Hello,
I have an object with a property that is a HashMap of name/value pairs from a
separate data table. If one of my properties on the 'food' class is a hashmap,
I'm assuming I can create that hashmap using the following sql mapping correct?
Is it possible to avoid the n+1 select issue and solve this problem using
another method? Would this be a case to use a row handler?
Thanks!
food
food_id int
food_name varchar(256)
food_attributes
food_id int
name varchar(64)
value varchar(64)
<resultMap id="food" class="food" >
<result property="foodId" column="food_id"/>
<result property="foodName" column="food_name"/>
<result property="foodAttributes" select="getFoodAttributes"/>
</resultMap>
<resultMap id="foodAttributes " class="java.util.HashMap" >
<result property="name" column="name"/>
<result property="value" column="value"/>
</resultMap>
<select id="getFood" resultMap="food" parameterClass="int">
select * from food where food_id=#id#
</select>
<select id="getFoodAttributes" resultMap="foodAttributes" parameterClass="int">
select * from food_attributes where food_id=#id#
</select>
Danny