初识Mybatis之Mapper.xml的问题解析

一、基本知识

1.xxxMapper.xml的路径须与xxxMapper.interface一致

2.xxxMapper.xml中的namespace必须为xxxMapper.interface的全类名

(例如:com.xxxx.mapper.BrandMapper)

3.xxxMapper.xml的id名须与xxxMapper.interface的抽象方法名一样

二、关于参数

1.当xxxMapper.xml中需要的参数数量为1个或没有时,则无需太多关注

2.当xxxMapper.xml中需要的参数数量为2个或2个以上时,须注意帮助java区分参数

有三种方式供选择:

(1)在传递参数时在interface中使用 @Param("xxxx") 注解,该注解双引号中的内容为xxxMapper.xml中#{}中的内容。

(2)传递实例,在测试中对实例部分赋值然后传递 (存在局限性,可能传递的参数不在同一实例中)

 (3)传递map(与实例传递相差不大,但是更为灵活,须知传递key为参数xxxMapper.xml中#{}中的内容)

 3.当xxxMapper.xml中需要的参数数量为不固定时

我们一般采用上述map传参的方法,但是接受时候需要判断都传递了什么参数

这时候就需要在xxxMapper.xml使用<where></where>与<if></if>进行判断了

<where>标签会去掉连接它的第一个and

 使用<if>标签进行判断通过则加上标签中的语句。


版权声明:本文为weixin_41343608原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。