mybatis嵌套resultMap
SQL语句:
select c1, c2, c3, c4...cn from some_table
Mybatis mapper.xml
<select id="query" resultMap="SomethingMap">
select c1, c2, c3, c4...cn from some_table where someconditions
</select>
<resultMap type="com.package.SomeClass" id="SomethingMap">
<collection property="partOne" resultMap="PartOneMap"/>
<collection property="partTwo" resultMap="PartTwoMap"/>
</resultMap>
<resultMap type="com.package.PartOneClass" id="PartOneMap">
<collection property="c1" column="c1" jdbcType="VARCHAR"/>
<collection property="c2" column="c2" jdbcType="VARCHAR"/>
...
</resultMap>
<resultMap type="com.package.PartTwoClass" id="PartTwoMap">
<collection property="c9" column="c9" jdbcType="VARCHAR"/>
<collection property="c10" column="c10" jdbcType="VARCHAR"/>
...
</resultMap>
Java代码
public class SomeClass {
private PartOneClass partOne;
private PartTwoClass partTwo;
// TODO getter and setter
}
public class PartOneClass {
private String c1;
private String c2;
...
// TODO getter and setter
}
public class PartTwoClass {
private String c9;
private String c10;
...
// TODO getter and setter
}
按照以上写法,test亲测有效!