在 MyBatis 中,可以使用注解 @Param 来处理多参数入参。以下是处理多参数入参的几种方式:
@Param 注解:@Select("SELECT * FROM users WHERE username = #{username} AND age = #{age}")
User getUserByNameAndAge(@Param("username") String username, @Param("age") int age);
Map 或 HashMap 作为入参:@Select("SELECT * FROM users WHERE username = #{username} AND age = #{age}")
User getUserByMap(Map<String, Object> params);
在调用时,可以使用 params.put("username", username) 和 params.put("age", age) 来设置参数。
@Param 注解和 Map 结合使用:@Select("SELECT * FROM users WHERE username = #{params.username} AND age = #{params.age}")
User getUserByMapWithParamAnnotation(@Param("params") Map<String, Object> params);
在调用时,可以使用 params.put("username", username) 和 params.put("age", age) 来设置参数。
无论使用哪种方式,都可以在 SQL 语句中使用 ${} 或 #{} 来引用参数,例如 SELECT * FROM users WHERE username = #{username}。