这是一个映射文件,我们先研究增删改的属性
id :一般和方法绑定,所以就写方法名
parameterType:一般可以不写传入参数的类型,因为Mybatis可以通过TypeHandler推断出具体传入语句的参数类型
现在研究查询的属性
当查询参数就一个的时候
#{随便写都可以},因为不管你写什么,都只有一个参数
当查询的参数有多个的时候,就不可以写where id = #{id} and empname=#{empName}
了,正确的写法应该是使用 0 和 1 替代,或者使用param1 和param2。原因:传入多个参数,mybatis会自动的将这些参数封装在一个map中
封装时使用的key就是参数的索引和参数第几个表示
Map<String,Object> map = new HashMap<>()
map.put("1",传入的值);map.put("2",传入的值)
但是呢,我们觉得使用 01表示不方便,我们可以:
用 @Param:为参数指定key
当函数的传入值为map的时候
一个小结的例子,例子将代码变得清晰:第一个参数有param修饰,第二个没有,第三个想取对象的属性