前端傳入的list參數應該是這樣子,不要懷疑,去測試一下吧。SpringMvc會把這樣的字符串格式自動轉成List:
第一種:
searchDTO{
'waybillNos':'1111', '2222', '3333'
}
第二種:當 waybillNos 是一個json對象時,可以將waybillNos放在url中的參數中
searchDTO{
'aaa':'value'
}
this.$httpExt().get('/receivable/outstanding?waybillNos ='+waybillNos , searchDTO, {
headers: {
'Content-Type': 'application/octet-stream'
},
responseType: 'arraybuffer'
}).then(res => {
doSomething();
});
后台使用對象接收:
public class searchDTO {
private List<String> waybillNos;
}
mapper中在where條件中需要判斷list的長度是否>0
<select id="queryPage" resultMap="BaseResultMap"
parameterType="com.dto.SearchDTO">
SELECT * FROM table_name WHERE 1=1
<if test="waybillNos != null and waybillNos.size>0">
AND waybill_no IN
<foreach collection="waybillNos" item="item" index="index" open="(" separator="," close=")">
#{item}
</foreach>
</if>
</select>
這樣,就可以從前端輕松傳入list並合成查詢條件。