关于mybaits中如何循环map集合

 

模拟请求 参数为map集合

@RequestMapping(value="/hh", method = RequestMethod.POST)
	public void hh() {
		Map outerMap=new HashMap();
		Map insideMap=new HashMap();
		insideMap.put("hh", "ye");
		insideMap.put("cc", "yy");
		insideMap.put("ih", "uu");
		
		outerMap.put("hei", insideMap);
		service.hh(outerMap);

 

xml中


  	insert into a (
  		
  			${key}
  		
  	)values(
  		
  			#{value}
  		
  	)
  

 

控制台打印的sql

有上面的流程可知

            传入到xml文件中的集合outerMap,键值为hei对应着另一个map集合insideMap,所以在标签中collection为hei对应的insideMap集合,index为insideMap的key,item为insideMap的value;#{key},#{value}即可取到pd这个map集合中的键值。至于${key},由于我写的是个插入语句,key值作为字段,value作为值,#{key}取出来的为字符串,而oracle数据库表明字段不能为字符串,用${key}取出即可;

你可能感兴趣的:(MyBatis框架)