我想使用嵌套选择来获取List
<resultMap id="MenuRoleResultMap" type="Role" extends="BaseResultMap">
<collection property="menus" ofType="Menu" column="id"
select="MenuMapper.listByRole"/>
</resultMap>
和func listByRole关于
<select id="listByRole" parameterType="Role" resultMap="BaseResultMap">
SELECT *
FROM sys_menu m
LEFT JOIN sys_role_menu srm ON m.id = srm.menu_id
WHERE m.del_flag = #{DEL_NOT}
and srm.role_id = #{id}
</select>
我希望这个func接受一个关于Role的实体接受更多参数,而不是HashMap,但是这个常量DEL_NOT是null
异常日志
org.mybatis.spring.MyBatisSystemException:
nested exception is org.apache.ibatis.type.TypeException:
Could not set parameters for mapping:
ParameterMapping{property='DEL_NOT', mode=IN, javaType=int, jdbcType=null, numericScale=null, resultMapId='null', jdbcTypeName='null', expression='null'}.
Cause: org.apache.ibatis.type.TypeException:
Error setting non null for parameter #1 with JdbcType null . Try setting a different JdbcType for this parameter or a different configuration property. Cause: java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Integer
怎么办?
英语真的很难
答案 0 :(得分:0)
...好 我觉得... 我是愚蠢的
<resultMap id="MenuRoleResultMap" type="Role" extends="BaseResultMap">
<collection property="menus" ofType="Menu" column="{id = id}"
select="MenuMapper.listByRole"/>
</resultMap>