mybatis传递参数

mybatis传递参数

一个参数时

  • #占位符使用方法#{username},username可以为任意字符,只与传递过来的参数有关

  • $拼接 使用方法为'${uername}'需要加单引号,而且username可以是任意名称

两个参数时

  • mybatis会将参数放在map集合中进行存储

  • 以arg或者param为键,以参数为值

  • arg1,arg2,param1,param2,arg和param可以混合使用

  • 只需要通过#{}${}的方式访问值即可

有多个参数时

  • 可以自己设置map
  • 使用方法同两个参数时

参数为实体类时

  • 通过属性名访问属性值,属性名不一定是成员变量
  • 属性名是get和set方法名中的get和set去调用,把剩余部分的首字母变为小写的结果,就是我们当前的属性名

使用@Param注解命名参数

  • 在mapper接口函数时使用,加在参数前面

  • 例如:User checkLoginByParam(@Param("username") String username, @Param("password") String password)

  • mybatis会自动生成map

  • 以@Param注解的值为键,以参数为值

  • 注解之后arg参数就变为注解的值

使用最多的为实体类和@Param类型