在一个业务中, 涉及到了多层Map的嵌套 , 总共是三层Map , 外层以Map作为参数,Map中包含了ID为数据标识 , PARAM为Map,里面存放的是数据内容, 并且PARAM对应的Map中是以不确定的字符串为key,Map为值的数据,而最后一层Map中存放了两个数据“SFSC”,“SFXH”都是String类型,数据结构如图所示:
注:括号中的类型都是value的类型而非key的类型
像这中情况要如何获取参数呢?
insert into table(ID,ZYZ_ID,LX,SFSC,SFXH) values
<foreach collection="PARAM.entrySet()" item="value" index="key" separator="," >
(UUID(),#{ID},#{key},#{value.SFSC},#{value.SFXH})
</foreach>
第一层通过PARAM.entrySet()方法获取到每个key放到value中,在通过#{value.SFXH};来取得最终的数据