【Java】ibatis注解@Param--解决Mapper中接收多个参数

本文介绍如何在MyBatis中使用@Param注解来优化参数传递,实现更灵活的SQL映射。通过具体示例,展示了在DAO层添加@Param注解的方法,以及在Mapper文件中如何正确配置参数类型,从而避免传递整个实体,提高代码的可读性和维护性。

         前言

只需在Dao层添加注解

Mapper文件

小结


前言

     小编做编辑模板名称的功能时,需要修改数据实体中一个字段,所以没有必要以实体为参数,只需要传两个参数就可以,id、name。

     但是mapper中接收的paramType一般是“String”或者一个实体,没有出现接收两个参数的情况。通过查找博客分析思路,找到了一个非常方便的注解@Param。

只需在Dao层添加注解

    Dao层的代码   

 void updateNamebyId(@Param("id") String id,@Param("name") String name);

  不加@Param也可以,不过这为了传递多个参数,并使Mapper.xml文件识别,故使用@Param。 

Mapper文件

   parameterType可以写“java.util.Map”,也可以不写。一般默认的是Map。

  <update id="updateNamebyId" parameterType="java.util.Map">
        UPDATE tip_templet_appraise
        SET name = #{name}
        WHERE id = #{id}
    </update>

小结

    在实现这个接口时,自己尝试了很长时间,中间将@Param放在了Dao上一层ServiceImpl的参数列表,导致@Param没有生效,几乎要放弃这种方法,去使用传递整个实体,最后一次尝试,发现写错了地方,还好我没放弃~~~!

                                                                                       感谢您的访问!

评论 5
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值