Hi, This is probably an FAQ, but I couldn't find any examples of it. It seems to be related to the N+1 problem, but I think there is a fundamental difference in that no database lookup should be necessary.
Is there a way to specify that the value in a result map should be equal to an input parameter? Here is an example (I know this itself will not work): <resultMap id="MyResultMap" class="MyResultClass"> <result property="myEntity" value="#myInputEntity#" /> <result property="colA" column="colA" /> <result property="colB" column="colB" /> </resultMap> <statement id="MyStatement" resultMap="MyResultMap"> SELECT colA, colB FROM myTable WHERE val1=#myInputEntity.prop1# AND val2=#myInputEntity.prop2# </statement> Obviously, the input is actually a map or another entity with a property named "myInputEntity". Here are some drivers for why I am looking for something like this: 1) myInputEntity could have many properties, so returning each one from the query and mapping them manually would be annoying at best. 2) Looking up myInputEntity with another query using an ID is both inefficient and unnecessary work. The entity could also have been generated by some other system, meaning there may be no way to map it to another Ibatis statement. 3) I am hoping to avoid writing custom post-query handlers, as this is a very common case for me, and that could get messy. Thanks, David