【Mybatis】target is null for method size

问题是因为Mapper集合标签处理不够严谨导致

 

例如集合参数是空的情况,直接执行遍历导致此异常的出现

            <if test="params.companyCodes != null and params.companyCodes.size() > 0">
                AND coop.COMPANY_CODE IN
                <foreach collection="params.companyCodes" item="companyCode" separator=", " open="(" close=")" >#{companyCode}</foreach>
            </if>

我这里问题是没注意到NULL,而是集合size大于0,所以疏忽了,IF判断的逻辑不够充分

 

异常参考自:

https://blog.csdn.net/qq_41070393/article/details/97235805

 

posted @ 2021-11-18 15:01  emdzz  阅读(2246)  评论(0编辑  收藏  举报