本帖最后由 Bactryki28 于 2014-04-23 15:20:17 编辑

解决方案 »

  1.   

    只有一条正常因为你的sql是join查询,join查询的特点就是这样,关联的都只会一条的,楼主想想看就知道了,你join查询出来的主表数据是多条的,但是后面跟着的从表数据不也是一行吗,总不能像树形结构那样,一条主表数据后面跟着多条关联的从表数据。mybatis也是如此你一行数据就当做一行数据,所以你要一对多不是这么查的,应该是主表查完,再用关联的字段查从表才会出现你想要的结果。也就是你要在你的映射xml文件里的
    <result property="aList" resultMap="IllegalTemp.BResult" />改成<result property="aList" column=“id” resultMap="IllegalTemp.BResult"  select="selectBResult"/>这里的column告诉ibatis你用这里查到的id带到从表中,select指的是你要用的select标签的id所以你要增加个
    <select id="selectBResult" resultMap="IllegalTemp.BResult">
      select e.type, e.seq, e.name,  e.resource_id, e.width, e.height, re.local,  re.remote,   re.absolute,  re.re
      from EA_ILLEGAL_EVIDENCE e   on e.illegal_id =#id#   left join EA_PUBLIC_RESOURCE re  on re.id = e.resource_id
    </select>
    这里的#id#其实就是上面那个result里面的那个关联的column
      

  2.   

    一对多这样查询
    <result property="" column="" select=''/>