一:resultMap与resultType、parameterMap与 parameterType的区别
1)resultMap & resultType 两者都表示结果集与java之间的关系,处理查询结果集,映射Java对象
2) resultMap 是一种“查询结果集---Bean对象”属性名称映射关系,使用resultMap关系可将将查询结果集中的列一一映射到bean对象的各个属性(两者属性名可以不同,配置好映射关系即可),适用与复杂一点的查询,如表的链接查询,表的一对多连接查询,映射的查询结果集中的列标签可以根据需要灵活变化,并且,在映射关系中,还可以通过typeHandler设置实现查询结果值的类型转换,比如布尔型与0/1的类型转换。
3) resultType 是一种“查询结果集---Bean对象”数据类型映射关系,使用resultType关系,即可使Bean对象接收查询结果集;见名知意,该方法是通过查询结果集中每条记录(属性)的数据类型和Bean对象的数据类型作映射,若两者都相同,则表示匹配成功,Bean可以接收到查询结果
4)一般使用**parameterType**直接将查询结果列值类型自动对应到java对象属性类型上,不再配置映射关系一一对应(ParameterMap(不推荐)
二:多表查询
A)一对多查询:
<select id="findItemCat" resultMap="ItemCatItemRM"> resultMap命名主表在前,从表在后
<resultMap type="pojo" id="ItemCatItemRM"> 对象
<id property="id" column="cid" /> 主键
<result property="name" column="name" /> 普通字段
<collection property="items" ofType="pojo"> ofType pojo对象
B)一对一
<association property="itemDesc"> 从表
3)sql语句搭配的标签
where-if 用在查询
set-if 更新
sql-include
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。