mybatis的映射文件当入参时Map时应注意,还有多个入参用@Param注解出现绑定失败时

<select id="findPostsBetweenRange" parameterType="java.util.Map" resultMap="PostResultMap">
    SELECT
        p.id as post_id,
        p.title as post_title,
        p.body as post_body,
        p.date_created as post_date_created,
        p.comment_count as post_comment_count,
        p.hit_count as post_hit_count,
        u.id as user_id,
        u.username as user_username,
        u.avatar_location as user_avatar_location,
        c.name as category_name,
        c.display_name as category_display_name
    FROM T_POST p
    LEFT JOIN T_USER u ON p.user_id = u.id 
    LEFT JOIN T_CATEGORY c ON p.category_id = c.id 
    WHERE p.date_created BETWEEN ${startDateStr} AND ${endDateStr}

    ORDER BY p.date_created DESC;
</select>

parameterType用Map的全包名java.util.Map,取map中的值时不能用#{},要用${}.因为#{} 会自动加上"" 这样是获取不到value值的。

还有:在springboot中mybatis-springboot-starter不知道从哪个版本开始,当多个入参时用@Param注解会出现绑定参数失败,即找不到。所以要用Map或实体类将参数封装起来。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值