接口存在多个参数的情形

接口中方法的参数的类型可以分为两种:

  • 一种是基本类型

  • 另一种是 JavaBean

当参数是一个基本类型的时候,它在 XML 文件中对应的 SQL 语句只会使用一个参数,当参数是一个 JavaBean 类型的时候,它在 XML 文件中对应的 SQL 语句会有多个参数。

对于参数比较少的情况,还有两种方式可以采用:

  • 使用 Map 类型作为参数

    使用 Map 类型作为参数的方法,就是在 Map 中通过 key 来映射参数名,value 则用来存放参数值。

  • 使用 @Param 注解

    给参数配置 @Param 注解后,MyBatis 会自动将参数封装成 Map 类型,@Param 注解值会作为 Map 中的 key,因此在 SQL 部分可以通过配置的注解值来使用此参数。

当只有一个参数(基本类型或拥有 TypeHandler 配置的类型)的时候,可以不使用注解。这是因为在这种情况下(集合和数组除外),MyBatis 会直接把这个唯一的参数拿来使用。

Last updated