关于mybatis 中配置时使用Map

上课时候听老师讲说在mybatis中使用map是最方便的选择,今天写代码的时候自己跳进坑里最后终于想起老师说的话爬了上来.
先上最后成功配置的源码:

//代码1
List<User> selectByLikeAccountAndPhoneNumber(Map map);
//代码2
<select id="selectByLikeAccountAndPhoneNumber" resultMap="BaseResultMap">
        select
        <include refid="Base_Column_List"></include>
        from t_user
        where account LIKE '%${account}%' and phonenumber LIKE '%${phonenumber}%'
    </select>
  • 最开始的时候在图一中没有将account,和phoneNumber放到Map中,而是以两个参数的方式传入代码1的selectByLikeAccountAndPhoneNumber()中,代码2的where语句如下
where account LIKE '%${0}%' and phonenumber LIKE '%${1}%'

使用0和1来获取account 和 phoneNumber
当运行的时候发现服务器500,参数绑定失败。后来为了测试 将语句写为

where account LIKE ${0} and phonenumber LIKE ${1}

发现可以成功的运行。但是一旦加上%就会报错。具体原因不详

后来想起老师讲的使用map传参。将代码改掉后完美运行

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值