mybatis怎么传入多个参数类型
在MyBatis中,传入多个参数类型通常有两种方式:
- 使用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);
- 使用@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中。选择其中一种方式来传入多个参数取决于个人喜好和项目需求。
相关问答