参数处理:
单参数处理: mybatis 不会做任何特殊处理。
- #{key} : key 可以写任何字段取出参数值。
测试方法:
mapper接口:
mapper.xml:
控制台:
多参数处理: mybatis会做特殊处理, 将多个参数封装成一个map。
- #{key} 的 key 为 param1……paramN, 或者参数索引。
- #{key} 的 value 为传入的参数的真实值。
测试方法:
mapper接口:
mapper.xml:
控制台: 绑定异常, id, name 参数没有找到
修改mapper.xml: 将params修改为索引
控制台:
修改mapper.xml: 将params修改为param1......paramN
控制台:
命名参数: 明确的指定mybatis将多个参数封装成一个map时key的值。
- #{key}的key为使用@Param("key")注解指定key的值。
- #{key}的value为传入参数真实的值。
修改mapper接口:
修改mapper.xml:
控制台:
注意: 多个参数时推荐使用命名参数
GitHub源码: mybatis-02