Mybatis传递多个参数方式

本文详细介绍了在Mybatis中使用不同参数传递方式的方法,包括单个string参数、多个string参数、使用@Param注解的参数及Map方式传参。通过具体的代码示例,展示了如何在XML映射文件中正确引用这些参数。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

使用Mybatis也有一段时间,可是突然发现竟然不咋会使用这个东西了,真是无语了。在以前的项目中使用的参数基本都是map形式的,很少会使用单个的参数传递,只是在不同的公司会有不同的写法,又不得不了解一下,真是亮瞎了24K合金眼,发现用法还是比较丰富的。

自己搜索了一下,大致有四种方式,这里只针对项目中遇到的和经常用到的方式进行记录一下。

一.就是string参数,分为多个或者单个参数的形式,或者@Param注解方式,参数较多的情况,用map比较方便

有注解方式的string参数在XML中的获取方式是不一样的。

public User selectUser(@Param("userName") String name, int @Param("deptId") deptId);

//#{}里的参数和注解中的参数一致
<select id="selectUser" resultMap="UserResultMap">
    select * from user
    where user_name = #{userName} and dept_id = #{deptId}
</select>

二.Map方式传参

public User selectUser(Map<String, Object> params);

<select id="selectUser" parameterType="java.util.Map" resultMap="UserMap">
    select * from user
    where user_name = #{userName} and dept_id = #{deptId}
</select>

#{}里面的名称对应的是Map里面的key名称。

这种map方法适合传递多个参数,且参数易变能灵活传递的情况,大多数接触的项目都是以map方式传递,发现还是不错的。

至于其他方式就不做记录了,只记录一下自己使用频率比较多的,当然在使用的过程中还会有其他的小问题,这个就要具体问题具体分析。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值