エンティティクラスの属性名がテーブルのフィールド名と異なる場合はどうすればよいですか?
タイプ1:クエリsqlステートメントでフィールド名のエイリアスを定義することにより、フィールド名のエイリアスはエンティティクラスの属性名と一致します。ここにいくつかのインラインコードがあります。
<select id=”selectorder” parametertype=”int”
resultetype=”me.gacl.domain.order”>
select order_id id, order_no orderno ,order_price price form orders where
order_id=#{
id};
</select>
タイプ2:フィールド名とエンティティクラス属性名の間の1対1の対応をマッピングするために
<select id="getOrder" parameterType="int" resultMap="orderresultmap">
select * from orders where order_id=#{
id}
</select>
<resultMap type=”me.gacl.domain.order” id=”orderresultmap”>
<!–用id属性来映射主键字段–>
<id property=”id” column=”order_id”>
<!–用result属性来映射非主键字段,property为实体类属性名,column为数据表中的属性–>
<result property = “orderno” column =”order_no”/>
<result property=”price” column=”order_price” />
</reslutMap>