MyBatis传参,针对不同类型的参数进行不同的封装处理!!!

1、传递多个参数时:

例子:

接口方法:

  第一个参数使用了注解@Param,第二个参数不使用注解

  User select(@Param("uid") String uid, String uname);

xml文件的sql语句:

/* *
* 多个参数
* 封装为Map集合,可以使用注解@Param注解,替换Map集合中默认的arg键名
* 原:
* map.put("arg0",参数值1)
* map.put("arg1",参数值2)
* map.put("param1",参数值1)
* map.put("param2",参数值2)
* 使用@Param("uid")第一个参数
* map.put("uid",参数值1)
* map.put("arg1",参数值2)
* map.put("param1",参数值1)
* map.put("param2",参数值2)
* */

使用方法如下:
<select id="select" resultType="User">
       select *
       from user
       where uid = #{uid} and uname = #{arg1}
                或者#{param1}      或者#{param2}
</select>

2、传递单个参数时:

 /* *
 * 单个参数:
 * 1.POJO类:直接使用,属性名 和 参数占位符 一致
 * 2.Map集合:直接使用,键名 和 参数占位符 一致
 * 3.Collection:封装为Map集合,可以使用@Param注解,替换Map集合中默认的arg键名
 *    map.put("agr0",collection集合);
 *    map.put("collection",collection集合);
 * 4.List:封装为Map集合,可以使用@Param注解,替换Map集合中默认的arg键名
 *     map.put("agr0",list集合);
 *     map.put("list",list集合);
 * 5.Array:封装为Map集合,可以使用@Param注解,替换Map集合中默认的arg键名
 *     map.put("agr0",数组);
 *     map.put("array",数组);
 * 6.其他类型:直接使用
* */

图例介绍:

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值