код показан ниже:
выберите * из sys_model <где> <if test="modelList != null и modelList.size() > 0"> и имя_модели в <foreach Collection="modelList" item="modelName" open="(" close=")" separator="," index="index"> #{название модели} </foreach> </если> <if test="modelName != null и modelName != ''"> и имя_модели, например concat('%',#{modelName},'%') </если> </где>
Здесь я фильтрую условие model_name дважды: первый раз это циклический запрос, я определяю элемент как modelName и использую modelName для передачи параметров в следующем фильтре.
Имя модели в цикле for здесь определяется элементом, а имя модели, отфильтрованное по параметру Like, имеет атрибут ModelName в переданном объекте. В настоящее время имя, определенное в теле цикла, совпадает с именем следующего параметра, а следующее имя модели будет повторно использовать значение последних данных цикла for.