public class UserBind {
private Integer id;
private String idNo;
private String phoneNo;
private String openId;
private Date latestBindTime;
private Date latestCancleBindTime;
private String bindFlag;
private WxUser wxUser;
/**用户所在省份 */
private String province;
public String getProvince() {
if (this.wxUser != null){
return this.wxUser.getProvince();
}
else{
return null;
}
}
public void setProvince(String province) {
this.province = province;
}
}
<!-- 一对一,没有N+1问题 -->
<resultMap id="UserOnBind" type="com.cignacmb.wxadmin.bo.UserBind">
<id column="id" property="id" jdbcType="INTEGER" />
<result column="id_no" property="idNo" jdbcType="VARCHAR" />
<result column="phone_no" property="phoneNo" jdbcType="VARCHAR" />
<result column="open_id" property="openId" jdbcType="VARCHAR" />
<result column="latest_bind_time" property="latestBindTime" jdbcType="TIMESTAMP" />
<result column="latest_cancle_bind_time" property="latestCancleBindTime" jdbcType="TIMESTAMP" />
<result column="bind_flag" property="bindFlag" jdbcType="VARCHAR" />
<association property="wxUser" resultMap="UserResultMap"></association>
</resultMap>
<select id="findUserOnBind" resultMap="UserOnBind">
select * from user_bind a left join WX_USER b on a.open_id=b.openid
</select>
<resultMap id="UserResultMap" type="com.cignacmb.wxadmin.bo.WxUser" >
<id column="openid" property="openid" jdbcType="VARCHAR" />
<result column="subscribe" property="subscribe" jdbcType="VARCHAR" />
<result column="nickname" property="nickname" jdbcType="VARCHAR" />
<result column="sex" property="sex" jdbcType="VARCHAR" />
<result column="city" property="city" jdbcType="VARCHAR" />
<result column="province" property="province" jdbcType="VARCHAR" />
<result column="country" property="country" jdbcType="VARCHAR" />
<result column="language" property="language" jdbcType="VARCHAR" />
<result column="headimgurl" property="headimgurl" jdbcType="VARCHAR" />
<result column="subscribe_time" property="subscribeTime" jdbcType="TIMESTAMP" />
<result column="unsubscribe_time" property="unsubscribeTime" jdbcType="TIMESTAMP" />
<result column="bind_time" property="bindTime" jdbcType="TIMESTAMP" />
<result column="unbind_time" property="unbindTime" jdbcType="TIMESTAMP" />
<result column="create_time" property="createTime" jdbcType="TIMESTAMP" />
<result column="update_time" property="updateTime" jdbcType="TIMESTAMP" />
<result column="unionid" property="unionid" jdbcType="VARCHAR" />
<result column="id_card_number" property="idCardNumber" jdbcType="VARCHAR" />
</resultMap>