在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);
這些方法都可以實現多個參數的傳遞,根據實際場景選擇適合的方法即可。