mybatis 传值出现 Parameter '**' not found. Available parameters are [0, 1, param1, param2]解决办法

 出现这个问题是sql解析不了传入的参数

       mybatis 传值的几种方式 

        *        如果传的是参数 在interface 接口的方法上要写上 @Param("参数名称")注解
        *        参数名称要和映射的mapper 文件中sql条件名称一样,

User findByUserAndPassword(@Param("username")String username, @Param("password")String password);

  select * from user u where 1=1 and u.username=#{username} AND u.password=#{password}


        *        如果不写param注解,那sql语句就要改成#{1}#{2}#{3}。。。参数要写的有顺序


   User findByUserAndPassword(String username,String password);

select * from user u where u.username=#{0} and u.password=#{1}  

        *        如果传入的是封装的类 就不需要写 @Param 注解  mapper文件直接 引用 ${},#{}

       public void addUseer(User u);

 INSERT INTO user(id,username,password,email,sex) VALUES(#{id},#{username},#{password},#{email},#{sex});

 

  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值