POJO類:
public class Product implements Serializable {
private static final long serialVersionUID = 1L;
private String prodId;
private String prodName;
private Double prodPrice;
private Vendor vendor;
public String getProdId() {
return prodId;
}
public void setProdId(String prodId) {
this.prodId = prodId;
}
public String getProdName() {
return prodName;
}
public void setProdName(String prodName) {
this.prodName = prodName;
}
public Double getProdPrice() {
return prodPrice;
}
public void setProdPrice(Double prodPrice) {
this.prodPrice = prodPrice;
}
public Vendor getVendor() {
return vendor;
}
public void setVendor(Vendor vendor) {
this.vendor = vendor;
}
}
public class Vendor implements Serializable {
private static final long serialVersionUID = 1L;
private Integer vendId;
private String vendName;
private String vendAddress;
private String vendCity;
public Integer getVendId() {
return vendId;
}
public void setVendId(Integer vendId) {
this.vendId = vendId;
}
public String getVendName() {
return vendName;
}
public void setVendName(String vendName) {
this.vendName = vendName;
}
public String getVendAddress() {
return vendAddress;
}
public void setVendAddress(String vendAddress) {
this.vendAddress = vendAddress;
}
public String getVendCity() {
return vendCity;
}
public void setVendCity(String vendCity) {
this.vendCity = vendCity;
}
}
Mapper文件:
<resultMap id="getProductListMap" type="com.pionner17.po.Product">
<id column="prod_id" property="prodId"/>
<result column="prod_name" property="prodName"/>
<result column="prod_price" property="prodPrice"/>
<association property="vendor" javaType="com.pionner17.po.Vendor">
<id column="vend_id" property="vendId"/>
<result column="vend_name" property="vendName"/>
<result column="vend_address" property="vendAddress"/>
<result column="vend_city" property="vendCity"/>
</association>
</resultMap>
<select id="getList" parameterType="Map" resultMap="getProductListMap">
SELECT
A.prod_id,
A.prod_name,
A.prod_price,
B.vend_id,
B.vend_name,
B.vend_address,
B.vend_city
FROM
products A
LEFT JOIN vendors B ON A.vend_id = B.vend_id
</select>