阅读量:164
在MyBatis中,可以使用Map或者注解的方式来传递多个参数。
使用Map的方式:
- 在Mapper接口中定义方法,参数为Map。
public List getUsers(Map params) ;
- 在Mapper.xml中使用参数。
<select id="getUsers" parameterType="java.util.Map" resultType="User">
SELECT * FROM user WHERE id = #{userId} AND name = #{userName}
</select>
- 在调用的时候,将多个参数封装成Map。
Map params = new HashMap<>();
params.put("userId", 1);
params.put("userName", "Alice");
List users = userMapper.getUsers(params);
使用注解的方式:
- 在Mapper接口中定义方法,使用@Param注解来标记参数。
public List getUsers(@Param("userId") Integer userId, @Param("userName") String userName);
- 在Mapper.xml中使用参数。
<select id="getUsers" resultType="User">
SELECT * FROM user WHERE id = #{userId} AND name = #{userName}
</select>
- 在调用的时候,直接传递多个参数。
List users = userMapper.getUsers(1, "Alice");
这两种方式都可以实现多个参数的传递,选择其中一种方式来使用即可。