之前遇到问题返回结果少数据,定位了很久,后来尝试结果map中,column值前都加了“u_”,返回结果正常。按理说collection中已经加了columnPrefix="u_",但是看来这个并没有生效,百思不得骑姐,哪位大神帮忙分析一下原因
结果map如下:
<resultMap id="queryList" type="com.xxx.xxx" >
<result column="flow_id" property="flowId" jdbcType="INTEGER"/>
<result column="is_end" property="isEnd" jdbcType="CHAR"/>
<collection property="uList" javaType="java.util.List" ofType="com.xxx.xxx" columnPrefix="u_">
<id column="id" property="id" jdbcType="INTEGER" />
<result column="m_id" property="mId" jdbcType="INTEGER" />
<result column="name" property="name" jdbcType="VARCHAR" />
</collection>
</resultMap>查询语句如下:
<select id="queryMeetings resultMap="queryList" parameterType="java.util.Map" >
select rr.*,u.id as u_id , u.m_id as u_m_id, u.name as u_name, u.dept_name as u_dept_name, u.position as u_position, u.status as u_status, u.user_unnid as u_user_unnid, u.mobile as u_mobile
from table_rr rr left join table_u u
</select>
结果map如下:
<resultMap id="queryList" type="com.xxx.xxx" >
<result column="flow_id" property="flowId" jdbcType="INTEGER"/>
<result column="is_end" property="isEnd" jdbcType="CHAR"/>
<collection property="uList" javaType="java.util.List" ofType="com.xxx.xxx" columnPrefix="u_">
<id column="id" property="id" jdbcType="INTEGER" />
<result column="m_id" property="mId" jdbcType="INTEGER" />
<result column="name" property="name" jdbcType="VARCHAR" />
</collection>
</resultMap>查询语句如下:
<select id="queryMeetings resultMap="queryList" parameterType="java.util.Map" >
select rr.*,u.id as u_id , u.m_id as u_m_id, u.name as u_name, u.dept_name as u_dept_name, u.position as u_position, u.status as u_status, u.user_unnid as u_user_unnid, u.mobile as u_mobile
from table_rr rr left join table_u u
</select>
类似的代码都是用自动工具生成的,flow_id用自动工具生成flowId