这是我的映射器:
<mapper namespace="mybatis.mappers.ParentMapper">
<resultMap id="Parent" type="parentBean">
<result column="PARENT_ID" property="parentID" />
<result column="PARENT_NAME" property="parentName" />
<collection column="CHILD_NAME" property="children" ofType="String" javaType="ArrayList"/>
</resultMap>
<select id="retrieveParentsFromDB" resultMap="Parent">
SELECT PARENT_ID, P.PARENT_NAME, CHILD_NAME, C.idchildren
FROM MYBATIS.PARENTS P, MYBATIS.CHILDREN C
WHERE P.PARENT_NAME = 'PARENT A'
ORDER BY P.PARENT_ID, C.CHILD_NAME;
</select>
</mapper>
CHILD_NAME COLUMN字段表示孩子的姓名。但是当我在java文件中打印出值时。检索到的内容似乎是父ID值。我该如何解决这个问题?
答案 0 :(得分:0)
结果在collections属性标记中添加列属性意味着您将在嵌套查询中使用它。我改用了
<collection property="children" ofType="String" javaType="ArrayList">
<result column="CHILD_NAME" />
</collection>