《select id="findListByModular" parameterType="String" resultMap="mesUserResVo"》
select
a.user_name AS userName,
a.user_realname AS userRealname,
b.res_id AS resId,
b.res_title AS resTitle,
b.res_content AS resContent,
b.p_id AS pId,
b.isleaf AS isLeaf,
b.isdel AS isDel ,
b.create_time AS createTime,
b.update_time AS updateTime,
c.m_id AS mId
from
mes_user a
join
mes_resource b on a.user_id=b.create_user
join
mes_modular c on b.m_id=c.m_id
where c.m_id = #{mId}
《/select》
带条件查询查不到数据在数据库里面又查得到,不带参数查询就能查得出,带条件查询打印的SQL
2019-11-16 12:11:23.077 DEBUG 11576 --- [nio-8081-exec-1] c.s.m.M.findListByModular : ==> Preparing: select a.user_name AS userName, a.user_realname AS userRealname, b.res_id AS resId, b.res_title AS resTitle, b.res_content AS resContent, b.p_id AS pId, b.isleaf AS isLeaf, b.isdel AS isDel , b.create_time AS createTime, b.update_time AS updateTime, c.m_id AS mId from mes_user a join mes_resource b on a.user_id=b.create_user join mes_modular c on b.m_id=c.m_id where c.m_id = ?
2019-11-16 12:11:23.079 DEBUG 11576 --- [nio-8081-exec-1] c.s.m.M.findListByModular : ==> Parameters: {
"mId":"1" //这里很奇怪多表查询入参Parameters 为什么是带{}的,单表查询 时候是Parameters: xxxx 没有括号的
}(String)
https://blog.csdn.net/qq_29857241/article/details/75270001
参数一般是需要加{},从问题描述看,问题应该出在参数这个地方,确认下参数名称mId是否正确?下面的也建议改下
parameterType="String"改成parameterType="java.lang.String",
where c.m_id = #{mId}
改成where c.m_id = #{mId,,jdbcType=VARCHAR}
试试