【Mybatis】常见面试题:Mybatis获取参数值的两种方式?

2023-10-10 15:25:40 浏览数 (1)

两种方式:{} 和 #{} {} 的本质是字符串拼接 #{} 的本质是占位符填充

1.单个字面量类型的参数

若mapper接口中的方法参数为单个字面量时:两种都行,注意${} 要手动加单引号

2.多个字面量类型的参数

若mapper接口中的方法参数为多个字面量时:此时mybatis会自动将这些参数放在一个map集合中,以arg0,arg1为键,以参数为值;以param1,param2为键,以参数为值。因此两种方式就可通过访问map集合的键就可以获取对应的值,注意${}要手动加单引号

3.map集合类型的参数

若mapper接口中的方法需要的参数为多个时,此时可以手动创建map集合,将这些数据放在 map中 只需要通过KaTeX parse error: Expected 'EOF', got '#' at position 4: {}和#̲{}访问map集合的键就可以获…{}需要手动加单引号

4.实体类类型的参数

若mapper接口中的方法参数为实体类对象时 此时可以使用KaTeX parse error: Expected 'EOF', got '#' at position 4: {}和#̲{},通过访问实体类对象中的属…{}需要手动加单引号

5.使用@Param标识参数

可以通过@Param注解标识mapper接口中的方法参数 此时,会将这些参数放在map集合中,以@Param注解的value属性值为键,以参数为值;以 param1,param2…为键,以参数为值;只需要通过KaTeX parse error: Expected 'EOF', got '#' at position 4: {}和#̲{}访问map集合的键就可以获…{}需要手动加单引号。

0 人点赞