MyBatis傳遞多個參數有以下幾種方式:
例如,定義一個Map并設置多個參數:
Map<String, Object> params = new HashMap<>();
params.put("param1", value1);
params.put("param2", value2);
然后在MyBatis的SQL語句中通過key獲取參數值:
<select id="selectByExample" parameterType="java.util.Map" resultMap="BaseResultMap">
SELECT * FROM your_table WHERE column1 = #{param1} AND column2 = #{param2}
</select>
例如,定義方法并使用@Param注解指定參數名稱:
@Select("SELECT * FROM your_table WHERE column1 = #{param1} AND column2 = #{param2}")
List<YourEntity> selectByParams(@Param("param1") Object param1, @Param("param2") Object param2);
例如,定義一個JavaBean并設置多個參數:
public class MyBean {
private Object param1;
private Object param2;
// getter and setter
}
MyBean bean = new MyBean();
bean.setParam1(value1);
bean.setParam2(value2);
然后在MyBatis的SQL語句中通過JavaBean的屬性名獲取參數值:
<select id="selectByBean" parameterType="your.package.MyBean" resultMap="BaseResultMap">
SELECT * FROM your_table WHERE column1 = #{param1} AND column2 = #{param2}
</select>
以上是幾種常見的傳遞多個參數的方式,根據實際情況選擇合適的方式。