ibatis多表查询问题 本帖最后由 Bactryki28 于 2014-04-23 15:20:17 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 只有一条正常因为你的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 一对多这样查询<result property="" column="" select=''/> struts2+hibernate+spring3整合报错404 jsp获取参数的问题 直接执行SQL和在JAVA程序里执行SQL区别在哪? STTUTS2与TOMCAT6.0的问题 spring3.0能对多表操作进行事务管理吗? 邮件服务器必须有固定ip地址吗? 高手请进,java问题 HiberNate,请教一组类的映射文件写发 TOMCAT能个版本最稳定?适宜做为商用!谢谢! JAVA的activemq在分布式系统上,多个provider中,队列是共享的吗 请教一下,http协议 请教一个框架性问题,紧急寻求解决方案
<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
<result property="" column="" select=''/>