MyBatis接口方法中可以接收各种各样的参数,MyBatis底层对于这些参数进行了不同的封装处理方式
MyBatis提供了ParamNameResolve类来进行参数封装
单个参数:
POJO类型:直接使用,属性名和参数占位符名称一致
Map集合:直接使用,键名和参数占位符名称一致
Collection:封装为Map集合
map.put("arg0",cllection集合)
map.put("collection",collection集合)
List
map.put("arg0",list集合)
map.put("collection",list集合)
map.put("list",list集合)
Array
map.put("arg0",数组)
map.put("array",数组)
其他类型:直接只用
多个参数:封装为Map集合
使用@Param注解,替换Map集合中默认的agr键名
map.put("arg0",参数值1)
map.put("param1",参数值1)
map.put("param2",参数值2)
map.put("arg1",参数值2)