在MyBatis中,有多种方法可以传递多个参数:
例如,使用Map传递多个参数:
Map<String, Object> params = new HashMap<>();
params.put("param1", value1);
params.put("param2", value2);
List<ResultType> result = sqlSession.selectList("namespace.statement", params);
或者使用@Param注解传递多个参数:
List<ResultType> result = sqlSession.selectList("namespace.statement", @Param("param1") value1, @Param("param2") value2);
在SQL语句中,可以使用${param1}
和${param2}
来引用参数。
例如,定义一个POJO对象:
public class MyParams {
private String param1;
private String param2;
// getters and setters
}
然后在SQL语句中引用POJO的属性:
<select id="statement" parameterType="com.example.MyParams" resultType="com.example.ResultType">
SELECT * FROM table WHERE column1 = #{param1} AND column2 = #{param2}
</select>
在调用时,将多个参数封装成POJO对象传递:
MyParams params = new MyParams();
params.setParam1(value1);
params.setParam2(value2);
List<ResultType> result = sqlSession.selectList("namespace.statement", params);
这些方法都可以实现多个参数的传递,根据实际场景选择适合的方法即可。