在 Java 开发中,尤其是使用 MyBatis 框架时,@Param 注解是一个非常常见和重要的注解。它主要用于在 Mapper 接口的方法中传递参数,并且在 SQL 映射文件中可以引用这些参数。
一、@Param 注解的作用@Param 注解主要有以下几个作用:为方法参数命名:在 Mapper 接口的方法中,给参数命名,使其在 SQL 映射文件中可以通过该名字引用。解决参数名称冲突:当方法有多个参数时,使用 @Param 注解可以避免参数名冲突。二、@Param 注解的基本用法1. 单个参数当方法只有一个参数时,可以直接使用 @Param 注解为参数命名。
在上述示例中,@Param("id") 为方法参数 id 命名,使其在 SQL 中可以通过 #{id} 引用。
2. 多个参数当方法有多个参数时,可以使用 @Param 注解为每个参数命名,避免名称冲突。
在这个示例中,我们有两个参数 id 和 name,通过 @Param 注解为每个参数命名,使其在 SQL 中可以分别通过 #{id} 和 #{name} 引用。
三、@Param 注解的高级用法1. 使用对象作为参数当方法参数是一个对象时,可以直接使用对象的属性,而无需 @Param 注解。
在此示例中,方法参数是一个 User 对象,我们通过 @Param("user") 注解为其命名,在 SQL 中可以通过 #{user.id} 和 #{user.name} 引用对象的属性。
2. 传递集合类型参数当需要传递集合类型参数时,可以使用 @Param 注解为集合命名,并在 SQL 中引用。
在这个示例中,我们使用了一个 List