温馨提示×

mybatis怎么传入多个参数类型

小亿
167
2024-02-29 12:44:15
栏目: 编程语言

在MyBatis中,传入多个参数类型通常有两种方式:

  1. 使用Map封装多个参数:将多个参数封装到一个Map中,然后将Map作为参数传入Mapper方法。在Mapper方法中可以通过指定的key来获取对应的参数值。
public interface UserMapper {
    List<User> selectUsersByCondition(Map<String, Object> params);
}

在Mapper XML文件中,可以通过${key}的方式来获取参数值:

<select id="selectUsersByCondition" parameterType="map" resultType="User">
    SELECT * FROM user
    WHERE name = #{name} AND age = #{age}
</select>

然后在调用Mapper方法时,传入一个包含多个参数的Map:

Map<String, Object> params = new HashMap<>();
params.put("name", "Alice");
params.put("age", 18);
List<User> users = userMapper.selectUsersByCondition(params);
  1. 使用@Param注解指定参数名:在Mapper方法中使用@Param注解为每个参数指定参数名,然后在Mapper XML文件中使用指定的参数名来获取参数值。
public interface UserMapper {
    List<User> selectUsersByCondition(@Param("name") String name, @Param("age") int age);
}

在Mapper XML文件中,可以通过#{parameterName}的方式来获取参数值:

<select id="selectUsersByCondition" resultType="User">
    SELECT * FROM user
    WHERE name = #{name} AND age = #{age}
</select>

然后在调用Mapper方法时,传入多个参数并指定参数名:

List<User> users = userMapper.selectUsersByCondition("Alice", 18);

以上是两种常用的方式来传入多个参数类型到MyBatis中。选择其中一种方式来传入多个参数取决于个人喜好和项目需求。

0