在 MyBatis 中,可以通过两种方式来传递多个参数:
使用 Map 类型作为参数:将多个参数封装到一个 Map 中,然后将该 Map 作为接口方法的参数传入。在 SQL 语句中可以通过 Map 的 key 来获取对应的参数值。public interface UserMapper { List<User> selectUserByParams(Map<String, Object> params);}在 XML 文件中可以这样使用:
<select id="selectUserByParams" resultType="User"> SELECT * FROM user WHERE name = #{name} AND age = #{age}</select>调用接口方法时,传入多个参数:
Map<String, Object> params = new HashMap<>();params.put("name", "Alice");params.put("age", 25);List<User> users = userMapper.selectUserByParams(params);使用 @Param 注解:在接口方法中使用 @Param 注解指定参数的名称,然后在 XML 文件中使用该名称来引用对应的参数。public interface UserMapper { List<User> selectUserByParams(@Param("name") String name, @Param("age") int age);}在 XML 文件中可以这样使用:
<select id="selectUserByParams" resultType="User"> SELECT * FROM user WHERE name = #{name} AND age = #{age}</select>调用接口方法时,传入多个参数:
List<User> users = userMapper.selectUserByParams("Alice", 25);以上是两种常用的传递多个参数的方式,可以根据实际情况选择使用哪一种方式来设计接口。