SSM,报错原因是因为以下mapper.xml的代码
<resultMap id="appSingleDetail" type="com.ybq.pojo.AppInfo" extends="base">
<result property="appInfo" column="app_info"/>
<result column="creation_date" property="creationDate"/>
<result column="interface_language" property="interfaceLanguage"/>
<result column="logo_loc_path" property="logoLocPath"/>
<result column="logo_pic_path" property="logoPicPath"/>
<result column="off_sale_date" property="offSaleDate"/>
<result column="on_sale_date" property="onSaleDate"/>
<result column="support_rom" property="supportROM"/>
<result column="update_date" property="updateDate"/>
<association property="categoryLevel1" javaType="com.ybq.pojo.AppCategory">
<id property="id" column="level1Id"/>
<result column="level1Name" property="categoryName"/>
</association>
<association property="categoryLevel2" javaType="com.ybq.pojo.AppCategory">
<id property="id" column="level2Id"/>
<result column="level2Name" property="categoryName"/>
</association>
<association property="categoryLevel3" javaType="com.ybq.pojo.AppCategory">
<id property="id" column="level3Id"/>
<result column="level3Name" property="categoryName"/>
</association>
<association property="appStatus" javaType="com.ybq.pojo.DataDictionary">
<result column="value_id" property="valueId"/>
<result column="value_name" property="valueName"/>
</association>
<!--最新版本封装-->
<association property="newAppVersion" javaType="com.ybq.pojo.AppVersion">
<id column="versionId" property="id"/>
<result property="versionNo" column="version_no"/>
</association>
<!--创建者-->
<association property="createUser" javaType="com.ybq.pojo.DevUser">
<id property="id" column="createId"/>
<result column="createName" property="devName"/>
</association>
<!--修改者-->
<association property="modifyUser" javaType="com.ybq.pojo.DevUser">
<id property="id" column="modifyId"/>
<result column="createName" property="devName"/>
</association>
<!--开发者-->
<association property="createUser" javaType="com.ybq.pojo.DevUser">
<id property="id" column="devId"/>
<result column="modifyName" property="devName"/>
</association>
</resultMap>
<select id="queryById" resultMap="appSingleDetail">
select t1.id as appInfoId,t1.app_info,t1.apk_name,t1.creation_date,t1.downloads,t1.interface_language,
t1.logo_loc_path,t1.logo_pic_path,t1.logo_loc_path,t1.on_sale_date,
t1.software_name,t1.software_size,t1.support_rom,t1.update_date,
c1.id as level1One,c2.id level2Id,c3.id level3Id,
c1.category_name level1Name,c2.category_name level2Name,c3.creation_time level3Name,
d1.value_id,d1.value_name,
v1.id versionId,v1.version_no,
u1.id createId,u1.dev_name createName,
u2.id modifyId,u2.dev_name modifyName,
u3.id devId,u3.dev_name devName
from app_info t1 left join app_category c1 on t1.category_level1 = c1.id
left join app_category c2 on t1.category_level2 = c2.id
left join app_category c3 on t1.category_level3 = c3.id
left join data_dictionary d1 on t1.status = d1.value_id
left join app_version v1 on t1.version_id = v1.version_no
left join dev_user u1 on t1.created_by = u1.id
left join dev_user u2 on t1.modify_by = u1.id
left join dev_user u3 on t1.dev_id = u1.id
where
d1.type_code = 'APP_STATUS'
AND
id = #{id}
</select>
原因是因为在resultMap里面,封装两个property=“createUser”
<!--创建者-->
<association property="createUser" javaType="com.ybq.pojo.DevUser">
<id property="id" column="createId"/>
<result column="createName" property="devName"/>
</association>
<!--修改者-->
<association property="modifyUser" javaType="com.ybq.pojo.DevUser">
<id property="id" column="modifyId"/>
<result column="createName" property="devName"/>
</association>
<!--开发者-->
<association property="createUser" javaType="com.ybq.pojo.DevUser">
<id property="id" column="devId"/>
<result column="modifyName" property="devName"/>
</association>