mybatis循环遍历map中list、string、实体对象

很多时候能写一个sql支持各种查询,无需因为一个条件则复制一大堆重复的sql,固使用了map传值。

Map<String,Object> map = new HashMap<>();

List<String> list = new ArrayList<>();

String aa = "aa";

List<实体> objlist = new ArrayList<>();

样例如上,mybatis实现如下:

map.put("stringList",list);

<if test="stringList!= null and stringList.size()>0">
			<foreach collection="stringList" item="id">
				OR A.ID=#{id}
			</foreach>
		</if>

map.put("aa",aa);

<if test="aa != null and aa != ''">
			AND A.ID=#{aa}
		</if>

map.put("objList",list);

<if test="objList!= null and objList.size()>0">
			<foreach collection="objList" item="obj">
				OR A.ID=#{obj.id}
			</foreach>
		</if>


猜你喜欢

转载自blog.csdn.net/goodlook0123/article/details/80356328