MyBatis中写Sql 的select循环语句含多个参数的

如果在dao层的函数中含有多个参数
public List<NewsInfo> findByPage(@Param("start")int start, @Param("rows")Integer rows, @Param("searchinfo")String[] searchinfo);
例此代码,而在xml中进行循环的字段只有searchinfo

<select id="findByPage"  resultType="cn.zly.news.domain.NewsInfo">
       select * from news.newsinfo 
       <where>
            <foreach collection="searchinfo" item="searchinfo" separator="or">
               ntitle like concat('%',#{searchinfo},'%') or nabstr like concat('%',#{searchinfo},'%') or ntext like concat('%',#{searchinfo},'%')
            </foreach>
         </where>limit #{start},#{rows}
    </select>

注意:collection 一定要等于要循环的字段名
如果只有一个参数,一般都是数组形式吧,collection填array就可以了


版权声明:本文为qq_42530436原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。