小编给大家分享一下mybatis动态插入list传入List参数的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
mybatis动态插入list的实例代码如下所述:
<insert id="savePrpcitemkindList" parameterType="java.util.List"> insert into prpcitemkind (RISKCODE, ITEMKINDNO, FAMILYNO, FAMILYNAME, PROJECTCODE, CLAUSECODE, CLAUSENAME, KINDCODE, KINDNAME, ITEMNO, ITEMCODE, ITEMDETAILNAME, GROUPNO, MODECODE, MODENAME, STARTDATE, STARTHOUR, ENDDATE, ENDHOUR, MODEL, BUYDATE, ADDRESSNO, CALCULATEFLAG, CURRENCY, UNITAMOUNT, QUANTITY, UNIT, VALUE, AMOUNT, RATEPERIOD, RATE, SHORTRATEFLAG, SHORTRATE, PREPREMIUM, CALPREMIUM, BASEPREMIUM, BENCHMARKPREMIUM, DISCOUNT, ADJUSTRATE, UNITPREMIUM, PREMIUM, DEDUCTIBLERATE, DEDUCTIBLE, FLAG, INSERTTIMEFORHIS, OPERATETIMEFORHIS, TAXRATE, TAXFLAG, TAXFEE, NETPREMIUM, TAXFEE_GB, TAXFEE_LB, ALLTAXFEE, ALLNETPREMIUM,PROPOSALNO) <foreach collection="list" item="item" index="index" separator="union all"> <trim prefix="select" suffix="from dual"> <choose> <when test="item.riskcode != null">#{item.riskcode},</when> <otherwise>null,</otherwise> </choose> <choose> <when test="item.itemkindno != null">#{item.itemkindno},</when> <otherwise>null,</otherwise> </choose> <choose> <when test="item.familyno != null">#{item.familyno},</when> <otherwise>null,</otherwise> </choose> <choose> <when test="item.familyname != null">#{item.familyname},</when> <otherwise>null,</otherwise> </choose> <choose> <when test="item.projectcode != null">#{item.projectcode},</when> <otherwise>null,</otherwise> </choose> <choose> <when test="item.clausecode != null">#{item.clausecode},</when> <otherwise>null,</otherwise> </choose> <choose> <when test="item.clausename != null">#{item.clausename},</when> <otherwise>null,</otherwise> </choose> <choose> <when test="item.kindcode != null">#{item.kindcode},</when> <otherwise>null,</otherwise> </choose> <choose> <when test="item.kindname != null">#{item.kindname},</when> <otherwise>null,</otherwise> </choose> <choose> <when test="item.itemno != null">#{item.itemno},</when> <otherwise>null,</otherwise> </choose> <choose> <when test="item.itemcode != null">#{item.itemcode},</when> <otherwise>null,</otherwise> </choose> <choose> <when test="item.itemdetailname != null">#{item.itemdetailname},</when> <otherwise>null,</otherwise> </choose> <choose> <when test="item.groupno != null">#{item.groupno},</when> <otherwise>null,</otherwise> </choose> <choose> <when test="item.modecode != null">#{item.modecode},</when> <otherwise>null,</otherwise> </choose> <choose> <when test="item.modename != null">#{item.modename},</when> <otherwise>null,</otherwise> </choose> <choose> <when test="item.startdate != null">#{item.startdate},</when> <otherwise>null,</otherwise> </choose> <choose> <when test="item.starthour != null">#{item.starthour},</when> <otherwise>null,</otherwise> </choose> <choose> <when test="item.enddate != null">#{item.enddate},</when> <otherwise>null,</otherwise> </choose> <choose> <when test="item.endhour != null">#{item.endhour},</when> <otherwise>null,</otherwise> </choose> <choose> <when test="item.model != null">#{item.model},</when> <otherwise>null,</otherwise> </choose> <choose> <when test="item.buydate != null">#{item.buydate},</when> <otherwise>null,</otherwise> </choose> <choose> <when test="item.addressno != null">#{item.addressno},</when> <otherwise>null,</otherwise> </choose> <choose> <when test="item.calculateflag != null">#{item.calculateflag},</when> <otherwise>null,</otherwise> </choose> <choose> <when test="item.currency != null">#{item.currency},</when> <otherwise>null,</otherwise> </choose> <choose> <when test="item.unitamount != null">#{item.unitamount},</when> <otherwise>null,</otherwise> </choose> <choose> <when test="item.quantity != null">#{item.quantity},</when> <otherwise>null,</otherwise> </choose> <choose> <when test="item.unit != null">#{item.unit},</when> <otherwise>null,</otherwise> </choose> <choose> <when test="item.value != null">#{item.value},</when> <otherwise>null,</otherwise> </choose> <choose> <when test="item.amount != null">#{item.amount},</when> <otherwise>null,</otherwise> </choose> <choose> <when test="item.rateperiod != null">#{item.rateperiod},</when> <otherwise>null,</otherwise> </choose> <choose> <when test="item.rate != null">#{item.rate},</when> <otherwise>null,</otherwise> </choose> <choose> <when test="item.shortrateflag != null">#{item.shortrateflag},</when> <otherwise>null,</otherwise> </choose> <choose> <when test="item.shortrate != null">#{item.shortrate},</when> <otherwise>null,</otherwise> </choose> <choose> <when test="item.prepremium != null">#{item.prepremium},</when> <otherwise>null,</otherwise> </choose> <choose> <when test="item.calpremium != null">#{item.calpremium},</when> <otherwise>null,</otherwise> </choose> <choose> <when test="item.basepremium != null">#{item.basepremium},</when> <otherwise>null,</otherwise> </choose> <choose> <when test="item.benchmarkpremium != null">#{item.benchmarkpremium},</when> <otherwise>null,</otherwise> </choose> <choose> <when test="item.discount != null">#{item.discount},</when> <otherwise>null,</otherwise> </choose> <choose> <when test="item.adjustrate != null">#{item.adjustrate},</when> <otherwise>null,</otherwise> </choose> <choose> <when test="item.unitpremium != null">#{item.unitpremium},</when> <otherwise>null,</otherwise> </choose> <choose> <when test="item.premium != null">#{item.premium},</when> <otherwise>null,</otherwise> </choose> <choose> <when test="item.deductiblerate != null">#{item.deductiblerate},</when> <otherwise>null,</otherwise> </choose> <choose> <when test="item.deductible != null">#{item.deductible},</when> <otherwise>null,</otherwise> </choose> <choose> <when test="item.flag != null">#{item.flag},</when> <otherwise>null,</otherwise> </choose> <choose> <when test="item.inserttimeforhis != null">#{item.inserttimeforhis},</when> <otherwise>null,</otherwise> </choose> <choose> <when test="item.operatetimeforhis != null">#{item.operatetimeforhis},</when> <otherwise>null,</otherwise> </choose> <choose> <when test="item.taxrate != null">#{item.taxrate},</when> <otherwise>null,</otherwise> </choose> <choose> <when test="item.taxflag != null">#{item.taxflag},</when> <otherwise>null,</otherwise> </choose> <choose> <when test="item.taxfee != null">#{item.taxfee},</when> <otherwise>null,</otherwise> </choose> <choose> <when test="item.netpremium != null">#{item.netpremium},</when> <otherwise>null,</otherwise> </choose> <choose> <when test="item.taxfee_gb != null">#{item.taxfee_gb},</when> <otherwise>null,</otherwise> </choose> <choose> <when test="item.taxfee_lb != null">#{item.taxfee_lb},</when> <otherwise>null,</otherwise> </choose> <choose> <when test="item.alltaxfee != null">#{item.alltaxfee},</when> <otherwise>null,</otherwise> </choose> <choose> <when test="item.allnetpremium != null">#{item.allnetpremium},</when> <otherwise>null,</otherwise> </choose> #{item.proposalno} </trim> </foreach> </insert>
Mybatis 传入List参数的实例代码如下所述:
Java代码
//dao 代码 如果传入的参数是数组,也一样 void insertDefaultMsg(@Param("idsList") ArrayList<String> idsList); //xml文件 <update id="insertDefaultMsg" parameterType="java.util.List"> UPDATE plf_pur_delivery_plan p SET p.promise_delivery_amount = p.quantity_req, p.promise_delivery_time = p.quantity_time WHERE p.id IN <foreach item="item" collection="idsList" separator="," open="(" close=")" index=""> #{item, jdbcType=VARCHAR} </foreach> </update> //如果传入字符串 //service 代码 Map<String, String> map = bean.getDatas().get(0); String ids = map.get("ids"); String[] idsArr = ids.split(","); String inId = ""; for (int i = 0; i < idsArr.length; i++) { if (i != idsArr.length - 1) { inId += "'" + idsArr[i] + "',"; } else { inId += "'" + idsArr[i] + "'"; } } List<Map<String, String>> list = purDeliveryPlanDao .getPlanListManual(inId); //dao层代码 List<Map<String, String>> getPlanListManual(@Param("inId") String inId); //xml 文件 <select id="getPlanListManual" parameterType="java.lang.String" resultType="java.util.Map"> SELECT p.supplier_code, p.pur_order_no, IF( p.update_times > 0, '修改订单', '新订单' ) AS order_type FROM plf_pur_delivery_plan p WHERE p.is_notice = '0' AND p.is_delete = '1' AND p.id in(<![CDATA[${inId}]]>) GROUP BY p.supplier_code, p.pur_order_no ORDER BY p.supplier_code </select>
以上是“mybatis动态插入list传入List参数的示例分析”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。