zoukankan      html  css  js  c++  java
  • mybatis 使用foreach异常处理

    mybatis 使用foreach时出现"The expression 'list' evaluated to a null value"问题

    java 代码

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

    dynamicMap.put("newBussinessId", “123”);
    dynamicMap.put("oldBussinessId",["456","789"]);

    错误写法

    <update id="updateBussinessId" parameterType="Map">
    update T_CRM_DYNAMIC
    set BUSSINESS_ID = #{newBussinessId}
    where CREATE_USER_ID in
    <foreach collection="list" item="oldBussinessId" index="index" separator="," open="(" close=")">
    #{oldBussinessId}
    </foreach>
    </update>

    正确写法

    <update id="updateBussinessId" parameterType="Map">
    update T_CRM_DYNAMIC
    set BUSSINESS_ID = #{newBussinessId}
    where CREATE_USER_ID in
    <foreach collection="oldBussinessId" item="oldBussinessId" index="index" separator="," open="(" close=")">
    #{oldBussinessId}
    </foreach>
    </update>

    "你可以传递一个 List 实例或者数组作为参数对象传给 MyBatis。当你这么做的时 候,MyBatis 会自动将它包装在一个 Map 中,用名称在作为键。List 实例将会以“list” 作为键,而数组实例将会以“array”作为键。"

    参考网址:http://www.mybatis.org/mybatis-3/zh/dynamic-sql.html

  • 相关阅读:
    Polly
    ELK
    Python基础三(选择,循环)
    Python基础二(输入与输出)
    Python关键字
    Python基础一(基本类型和运算符)
    Python发展史
    在虚拟机(vmware)上安装CentOS
    centos7联网
    Hashmap的实现
  • 原文地址:https://www.cnblogs.com/chai-blogs/p/8126045.html
Copyright © 2011-2022 走看看