mybatis多表查询一步一步调式
还原到最初阶段,查询所有,显示正确
<resultMap id="SresultMap" type="SPJ"> <id column="sno" property="sno"></id> <result property="jno" column="jno"></result> <result property="pno" column="pno"></result> <result property="qty02" column="qty02"></result> <association property="sinfo" column="sno" javaType="S"> <id property="sno" column="sno"></id> <result column="sname" property="sname"></result> <result column="status" property="status"></result> <result column="city" property="city"></result> </association> </resultMap>
最终使用association进行连接查询
<resultMap id="SresultMap" type="SPJ"> 表示查询封装哪一个(以哪一个为主体,另外一个为连接对象
<association property="sinfo" column="sno" javaType="S">表示连接对象为sinfo,通过sno进行连接查询的 Javatype表示所查询类容的类型
<mapper namespace="july.wild.dao.Tableimpl"> <resultMap id="SresultMap" type="s"> <id property="sno" column="sno"></id> <result column="sname" property="sname"></result> <result column="status" property="status"></result> <result column="city" property="city"></result> <collection property="spjinfo" ofType="SPJ" column="sno"> <id column="sno" property="sno"></id> <result property="jno" column="jno"></result> <result property="pno" column="pno"></result> <result property="qty02" column="qty02"></result> </collection>
collection中properties 表示一对多查询时LIst集合的属性,column表示数据库连接的字段属性,ofType表示LIst集合中的元素属性,其他和association一样。
但是需要注意打印的信息需要和我们查询的一致。