@Override
    public void eqByMap(IMapping mapping, IWrapper wrapper, boolean isColumn, Map<String, Object> condition) {
        Map<String, FieldMapping> fields = isColumn ? mapping.getColumnMap() : mapping.getFieldsMap();
        for (Map.Entry<String, Object> entry : condition.entrySet()) {
            String key = entry.getKey();
            FieldMapping f = fields.get(key);
            if (f == null) {
                String err = isColumn
                    ? "Column[" + key + "] of Table[" + mapping.getTableName() + "]"
                    : "Field[" + key + "] of Entity[" + mapping.entityClass().getSimpleName() + "]";
                throw new FluentMybatisException(err + " is not found.");
            }
            Object value = entry.getValue();
            if (value == null) {
                wrapper.where().apply(f.column, SqlOp.IS_NULL);
            } else {
                wrapper.where().apply(f.column, SqlOp.EQ, value);
            }
        }
    }
https://blog.csdn.net/w_y_t_/article/details/51416201
<p>
https://www.cnblogs.com/xunux/p/4882761.html
<p>
https://blog.csdn.net/weixin_41175479/article/details/80608512
fluent-mybatis/src/main/java/cn/org/atool/fluent/mybatis/base/provider/CommonSqlKit.java