<!--
18 根据id查询得到一个order对象,使用这个查询是可以正常查询到我们想要的结果的,
19 这是因为我们将查询的字段名都起一个和实体类属性名相同的别名,这样实体类的属性名和查询结果中的字段名就可以一一对应上
20 -->
21 <select id="selectOrder" parameterType="int"
22 resultType="me.gacl.domain.Order">
23 select order_id id, order_no orderNo,order_price price from orders where order_id=#{id}
24 </select>
25
26 <!--
27 根据id查询得到一个order对象,使用这个查询是可以正常查询到我们想要的结果的,
28 这是因为我们通过<resultMap>映射实体类属性名和表的字段名一一对应关系 -->
29 <select id="selectOrderResultMap" parameterType="int" resultMap="orderResultMap">
30 select * from orders where order_id=#{id}
31 </select>
32 <!--通过<resultMap>映射实体类属性名和表的字段名对应关系 -->
33 <resultMap type="me.gacl.domain.Order" id="orderResultMap">
34 <!-- 用id属性来映射主键字段 -->
35 <id property="id" column="order_id"/>
36 <!-- 用result属性来映射非主键字段 -->
37 <result property="orderNo" column="order_no"/>
38 <result property="price" column="order_price"/>
39 </resultMap>
40
41 </mapper>
两种方案:
第一种是写在sql语句中,一 一对应起来。
第二种是用这个标签
<!--通过<resultMap>映射实体类属性名和表的字段名对应关系 -->
<resultMap type="me.gacl.domain.Order" id="orderResultMap">
<!-- 用id属性来映射主键字段 -->
<id property="id" column="order_id"/>
<!-- 用result属性来映射非主键字段 -->
<result property="orderNo" column="order_no"/>
<result property="price" column="order_price"/>
</resultMap>