@Param

简介:

MyBatis‌中的‌@Param是一种用于标记方法参数的注解,主要用于指定参数的名称和类型,以便在
Mapper XML文件中引用该参数

注意:

当Mapper方法有多个参数时,使用@Param注解是非常必要的。不使用@Param时,在 Mapper XML文件中 只能通过位置来识别参数,而使用@Param则可以通过名称来访问‌

基本用法

  1. 单个参数当方法只有一个参数时,可以直接使用@Param注解为参数命名。例如,
    void insertUser(@Param("user") User user);
    在Mapper XML文件中可以通过  #{user} 引用该参数‌  user

     

      2‌.多个参数‌:当方法有多个参数时,可以使用@Param注解为每个参数命名,避免名称冲突。例如,

void insertUserAndRole(@Param("user") User user, @Param("role") Role role);

Mapper XML文件中可以通过  #{user} 和    #{role} 分别引用这些参数‌。

        

         3‌.对象参数‌:当方法参数是一个对象时,可以使用@Param注解为对象命名,并在XML中通过对象的属性引用。例如,

void insertUser(@Param("user") User user);

Mapper XML中可以通过   #{user.id} 和   #{user.name} 引用对象的属性‌。

        

         4‌.集合参数‌:当方法参数是一个集合时,可以使用@Param注解为集合命名,并在SQL中使用foreach标签遍历集合。例如,

void insertUsers(@Param("users") List users);

Mapper XML中可以通过   #{users} 引用集合

你可能感兴趣的:(mybatis,java)